当你读/写文本文件时,我需要找到一种方法来读取和写入像fstream这样的excel单元格。我尝试使用<fstream>
,但它只填充Cell A1,如果我使用endl或\ n,则可能填充A2。我想知道是否有办法访问其他单元格,以便我可以用值填充它们来为项目创建数据库。价值观,名称,电话,价格等
fstream file;
file.open("file.csv", ios::out | ios::app | ios::in);
if(!file.is_open())
{
cout << "Error!\n";
}
else
{
file << "Text1\nText2";
}
file.close();
答案 0 :(得分:0)
读取/写入和格式化excel文件并非易事。您可以尝试使用AKPickerView
<强>替代地强>
将您的Excel文件保存为.csv,然后对其进行读写。 csvs是逗号分隔文件,其中每列中的数据用逗号分隔,每行用新行分隔。
<强>更新强>
可以使用任何简单的文本编辑器(如记事本)创建csv文件。只需使用逗号分隔数据
更新2
file <<"Text1,"<<"Text2,"<<std::endl; //row 1
file <<"Text3,"<<"Text4,"<<std::endl; // row 2
更新3
int main()
{
ofstream out("C:\\inp.csv");
out << "Text1,Text2" << endl;
out << "Text1,Text2" << endl;
return 0;
}
答案 1 :(得分:0)
您正在使用csv =逗号分隔值。要将值放在不同的列上,请用逗号分隔 - ,
file << "v1" << ',' << "v2";
修改强>
刚发现this表示默认分隔符为TAB(\t
),因此您应该使用:
file << "v1" << '\t' << "v2";
它还有关于如何改变这一点的说明。