如何在c ++中将整个文本文件复制到char数组中

时间:2015-01-11 07:39:37

标签: c++ arrays string file borland-c++

int main()
{
char ch;
char text[500];
char s[500];

ifstream fin("bitch.txt",ios::in);
while(!fin.eof())
{
fin.getline(s,500);
}
fin.close();

for (int i=0; i<500; i++)
{
   cout << s[i];
}
return 0;
}

如何在c ++中将整个文本文件内容复制到char数组中 考虑到文本文件包含一个长100个字符的段落 我也需要阅读空格。

2 个答案:

答案 0 :(得分:2)

就这样做

#include <string>
#include <fstream>
#include <streambuf>

std::ifstream file("file.txt");
std::string str((std::istreambuf_iterator<char>(file)),
                 std::istreambuf_iterator<char>());

然后

str.c_str();

您寻找的阵列。

答案 1 :(得分:0)

如果要将文件的完整内容复制到char数组中,则不需要逐行执行。您只需复制文件的完整内容

即可

您可以使用

将整个文件读入字符串
std::ifstream in("FileReadExample.cpp");
std::string contents((std::istreambuf_iterator<char>(in)), 
std::istreambuf_iterator<char>());

然后你可以使用contents.c_str()来获取char数组

请看下面的链接。他给出了正确的答案 How to copy a .txt file to a char array in c++