2 imonkeyi imonkeyi 于 2017.08.28 16:07 提问

c++问题 c++在visual studio环境下c++读取文件的换行问题
c++

c++读文件怎么换行?
假如一个文件内容是
1 2 3
4 5 6
7 8 9
怎么把1 4 7 读出来?
c++写文件怎么换行?
就是你先写了一串信息了然后你想之后写的东西可以跳到文件下一行记录
是直接用endl吗?
比如
fstream outfile;
outfile("d::\text",ios::out);
int a=1,b=2,c=3;
outfile<<a<<endl;
outfile<<b<<endl;
outfile<<c<<endl;这样吗?

5个回答

u010983763
u010983763   2017.08.28 17:31
已采纳

c++用fstream类不就可以了吗!

u010983763
u010983763 回复imonkeyi: 那你可以看看文档,或者查阅书籍,很简单的
3 个月之前 回复
imonkeyi
imonkeyi 就是fstream类的换行用法不知道
3 个月之前 回复
justin_bkdrong
justin_bkdrong   2017.08.28 17:19

c++的库不经常使用。

使用C的方式是

FILE * fp = fopen("d:\\test","wb");
if(fp)
{
    fprintf(fp,"%d\r\n",a);
    fprintf(fp,"%d\r\n",b);
    fprintf(fp,"%d\r\n",c);
    fclose(fp);

}
j_s_3721
j_s_3721 C++的库也经常使用, 久经考验的, 哈哈.
3 个月之前 回复
justin_bkdrong
justin_bkdrong   2017.08.31 10:51

读取和输出。代码如下:

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    fstream inFile("d:\\test\\in.txt", ios::in);
    int arr[3];
    int a, b, c;
    for (int j = 0; j < 3; j++)
    {
        inFile >> arr[0];
        if (j == 0)
        {
            a = arr[0];
        }
        else if (j == 1)
        {
            b = arr[0];
        }
        else if (j == 2)
        {
            c = arr[0];
        }
        inFile >> arr[1];
        inFile >> arr[2];
    }
    fstream outFile("d:\\test\\out.txt", ios::out);
    outFile << a << endl;
    outFile << b << endl;
    outFile << c << endl;
    return 0;
}

wood_179811
wood_179811   2017.09.03 11:38

fread fwrite?

qq_22203741
qq_22203741   2017.09.05 15:56

c++用fstream类里面有写入文件换行的接口 调用就行

Csdn user default icon
上传中...
上传图片
插入图片