从 excel 到 cpp 项目的输入和输出
Input and output from excel to cpp project
当你 read/write 进入文本文件时,我需要找到一种方法来读取和写入 excel 像 fstream 这样的单元格。我尝试使用 <fstream>
,但如果我使用 endl 或 \n,它只会填充单元格 A1 和 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();
read/write 和格式化 excel 文件并不是一件容易的事。您可以尝试使用 libxl
交替
将 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;
}
您使用的是 csv = 逗号分隔值。要将值放在不同的列上,请用逗号分隔它们 - ,
file << "v1" << ',' << "v2";
编辑
刚发现 this 表示默认分隔符是 TAB (\t
),所以你应该使用:
file << "v1" << '\t' << "v2";
它还有关于如何更改它的说明。
当你 read/write 进入文本文件时,我需要找到一种方法来读取和写入 excel 像 fstream 这样的单元格。我尝试使用 <fstream>
,但如果我使用 endl 或 \n,它只会填充单元格 A1 和 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();
read/write 和格式化 excel 文件并不是一件容易的事。您可以尝试使用 libxl
交替
将 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;
}
您使用的是 csv = 逗号分隔值。要将值放在不同的列上,请用逗号分隔它们 - ,
file << "v1" << ',' << "v2";
编辑
刚发现 this 表示默认分隔符是 TAB (\t
),所以你应该使用:
file << "v1" << '\t' << "v2";
它还有关于如何更改它的说明。