C++-c语言或者c++编程 处理txt文本内容

发布于 2016-12-24 14:22:23 字数 142 浏览 1152 评论 6

txt文本中有n排数据,每排数据有2列,怎么实现将右边的一列数据删掉,只保留左边的那一列数据。假设txt文档中有100行数据,每行数据有两个数字,两个数字之间有7个空格,请问怎么把右边列的数据删除,只保留左边一列的数据,重新写入新的txt文本,按100行一列的格式排列。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

晚风撩人 2017-08-29 05:36:27

C语言可以使用fopen只读、fscanf读源文件保存到程序中
然后fopen只写打开原文件,这时候原文件内容会被清除
然后用fprintf把左边一列写入。。。
如果想保留原文件,那么就fopen写入一个新文件就可以了。。。

晚风撩人 2017-07-24 06:44:27

至于那么复杂吗?把数据按前后两部分读出来,前面的写到一个新文件里就行了。

#include <stdio.h>
#define MAX_STR_LEN 100
int main()
{
FILE *rfp, *wfp;
char str[MAX_STR_LEN], tmp[MAX_STR_LEN]
rfp = fopen("read_file.txt", "r");
wfp = fopen("write_file.txt", "w");
while(1)
{
fscanf(rfp, "%s%s", str, tmp);
if(feof(fp))
break;
puts(str);
}
fclose(rfp);
fclose(wfp);
}

清晨说ぺ晚安 2017-05-10 15:04:57

算好间隔读取吧,用seek()函数,到没用的数据就跳过去。

甜柠檬 2017-05-01 23:02:48

用stringstream吧!

#include<iostream>
#include<fstream>
#include<string>
#include<sstream>
using namespace std;

int main(int argc, char *argv[])
{
ifstream is("test.txt");
string buffer;
int col;

while (!is.eof())
{
getline(is,buffer);
istringstream isstr(buffer);
isstr >> col;
cout << col << endl;
}
return 0;
}

归属感 2017-02-04 19:30:34

 #include<iostream>
#include<fstream>
using namespace std;
int main()
{
ifstream fin("test.txt",ios::in);
if(!fin)
{
cout<<"Can not open the file!";
return 1;
}
int num[100];
int i=0;
while(!fin.eof())
{
fin>>num[i];
fin.seekg(9,ios::cur);
i++;
}
fin.close();
ofstream fout("test.txt",ios::out);
if(!fout)
{
cout<<"Can not open the file!";
return 1;
}
int size=i-1;
for(int j=0;j!=size;j++)
fout<<num[j]<<endl;
fout.close();
return 0;
}

灵芸 2017-01-03 01:19:41

用while循环操作;每行读取,然后对每行字符串操作取出第一个字符然后输出另一文件即可。

#include <stdio.h>

int main()
{
char str[15] = {0};
char str1[2] = {0};

FILE *fp, *fi;
fp = fopen("./test.txt", "r+");
fi = fopen("./read.txt", "w+");
while(1)
{
fgets(str, sizeof(str), fp);
if(feof(fp))
{
break;
}
str1[0] = *str;

fprintf(fi, "%sn", str1);
}
fclose (fp);
fclose (fi);
return 0;
}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文