c++中怎么从txt问当中读取表格中的数据
c++中如何从txt问当中读取表格中的数据
例如:在一篇txt文档中存储了一篇表格,我想要按列读取,该如何操作?急求,望各位大侠不吝赐教,感激不尽!
------解决方案--------------------
为什么非要读.TXT的文件,如果你想把EXCEL表格的东西按列读取,可以用EXCEL表格的.CSV的读取.是带逗号分隔符的文件.可以按列读取.
------解决方案--------------------
顶楼上的,如果是空格分隔或者tab分隔也都可以作如楼上处理。另外,ultraedit的列操作也很爽,如果是粘贴复制列可以试试。
如果非要用c++程序,可以这样:
设分隔符为“|”,读取首行,遇分隔符就读取下一行;
读某行要判断列数,就通过遇到的“|”数来判断,如果遇到第3个“|”,表明后面的是第4列;
一列读完(判断文件没有其他行,或者遇到“EOF”),列数要递增;
如果要读后面的列,就返回首行,继续按照上面的做法读下一列。
------解决方案--------------------
例如:在一篇txt文档中存储了一篇表格,我想要按列读取,该如何操作?急求,望各位大侠不吝赐教,感激不尽!
------解决方案--------------------
为什么非要读.TXT的文件,如果你想把EXCEL表格的东西按列读取,可以用EXCEL表格的.CSV的读取.是带逗号分隔符的文件.可以按列读取.
------解决方案--------------------
顶楼上的,如果是空格分隔或者tab分隔也都可以作如楼上处理。另外,ultraedit的列操作也很爽,如果是粘贴复制列可以试试。
如果非要用c++程序,可以这样:
设分隔符为“|”,读取首行,遇分隔符就读取下一行;
读某行要判断列数,就通过遇到的“|”数来判断,如果遇到第3个“|”,表明后面的是第4列;
一列读完(判断文件没有其他行,或者遇到“EOF”),列数要递增;
如果要读后面的列,就返回首行,继续按照上面的做法读下一列。
------解决方案--------------------
- C/C++ code
#include <iostream> #include <fstream> using namespace std; int main() { int i; int n[5] = {1, 2, 3, 4, 5}; ofstream ofile("test.txt", ios::out | ios::binary); if(!ofile) { cout << "Cannot open file.\n"; return 1; } ofile.write((char *) &n, sizeof n); //向文件写数 ofile.close(); for(i=0; i<5; i++) n[i] = 0; ifstream ifile("test.txt", ios::in | ios::binary); //以二进制方式打开文件 if(!ifile) { cout << "Cannot open file.\n"; return 1; } ifile.read((char *) &n, sizeof n ); for(i=0; i<5; i++) cout << n[i] << " "; //从文件中读数据 ifile.close(); return 0; }
------解决方案--------------------
具体情况具体分析,大家只能告诉你方法.C++怎样处理EXCEL文档 网上搜吧,VCBASE上有很多例子