【发布时间】:2009-10-21 17:35:43
【问题描述】:
我在将字符串写入文件时遇到了一点问题, 如何将字符串写入文件并能够将其视为 ascii 文本? 因为当我为 str 设置默认值时我能够做到这一点,但当我输入 str 数据时却不行 谢谢。
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
int main()
{
fstream out("G://Test.txt");
if(!out) {
cout << "Cannot open output file.\n";
return 1;
}
char str[200];
cout << "Enter Customers data seperate by tab\n";
cin >> str;
cin.ignore();
out.write(str, strlen(str));
out.seekp(0 ,ios::end);
out.close();
return 0;
}
【问题讨论】:
-
只是一个旁注。有:char str[200];然后从输入中读取文本是一个坏主意。当有人输入超过 200 个字符时,您的程序将表现未定义并可能崩溃
-
std::string可能设计得不好,但它是你的朋友。如果str是std::string,cin >> str就可以正常工作。
标签: c++