使用 std::string 进行文件写入:解开谜团
当尝试将 std::string 写入文件时,用户可能会遇到意外的结果框或损坏的字符。这个问题是由于写入字符串的二进制数据而引起的,其中包含指针和字符串长度,而不是实际的字符。
对于文本文件,适当的解决方案是使用 ofstream,其操作类似于 std ::cout 但将输出定向到文件。考虑以下示例:
#include <fstream> #include <string> int main() { std::string input; std::cin >> input; std::ofstream out("output.txt"); out << input; out.close(); return 0; }
但是,如果需要二进制数据,则应使用实际的字符串字符。这可以使用 string::c_str():
write.write(studentPassword.c_str(), studentPassword.size());来实现
以上是如何正确地将 std::string 写入 C 中的文件?的详细内容。更多信息请关注PHP中文网其他相关文章!