通过C 的CSV读取和写入单元格
Reading and writing cell by cell in a CSV with C++
我正在尝试与CSV一起工作,据我发现,没有开源库可以允许您插入列或行。取而代之的是,我试图编写一个代码,该代码将通过获取每个单元格的值并将其复制到右侧的单元格。为了做到这一点
这是我到目前为止的代码:
#include <iostream>
#include <fstream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
using namespace std;
int main()
{
FILE * qFile;
qFile = fopen ("Testcsv2.csv", "r+");
int i, j, k;
char input [80];
printf("Variables declaredn");
for(k=1;k<5;k++)
{
printf("k loop enteredn");
for(i=5;i>1;i--)
{
printf("i loop enteredn");
for(j=1;j<i;j++)
{
fscanf(qFile, "%2[^,]", input);
printf("Input is %sn", input);
}
fprintf(qFile, "%s", input);
}
}
fclose (qFile);
return 0;
}
每次我尝试一次,FSCANF一遍又一遍地读取A1,而不是读取A1,然后是B1,C1等。
如何使此读取单元格读取单元,然后向下移动并再次进行操作?
?谢谢!
编辑:输入文件仅仅是带有与其单元相对应的数据的第一个4x4单元格。
即。A1 B1 C1 D1A2 B2 C2 D2A3 B3 C3 D3A4 B4 C4 D4
每个都包含在自己的单元格中的地方。
我认为您不应该打印到输入文件:
fprintf(qFile, "%s", input);
这可能是您的文件损坏的原因。
另外,您在哪里处理行的末端?
通常,CSV文件是每行文本行的格式。
相关文章:
- 将QIcon添加到QTableView单元格
- 当用户在qtablewidget中输入单元格时,如何获得信号?C++
- 查找矩阵中单元格的相邻元素
- C++:在多个线程中访问同一数组/向量的不同单元格是否会产生数据竞赛?
- 当我使用需要计算数组单元格地址的模板时,奇怪的C++行为
- PyQT - 在 QTableWidget 单元格中显示垂直文本
- 2D 数组,某些单元格保存特定数据
- 为什么通过定义另一个指针单元格,整个代码停止工作?
- CLI/C++dataGridView示例-设置comobox单元格列表的索引
- 用单元格表示迷宫
- 为什么不能使用 setData() 在 QTreeView 中设置单元格的背景颜色?
- 将 GtkTreeView 中的单元格设置为以编程方式编辑模式
- 如何防止Qt中的当前单元格更改信号或跳过"processing"?
- 将当前多边形数据单元与下一个多边形单元格 - VTK 进行比较
- VTK:尝试使用 vtkrubberbandpick&vtkHardwareSelector 选择区域中的可见单元格
- QTableWiget::cellChanged 信号不会为具有 QTableWidgetItem 的单元格发出
- 当存在空单元格时,用于 c++ 的 Tsv 文件解析器会突然结束
- C++ unordered_map<T,int> 如何区分空单元格和 0
- 基于单元格代替QTableWidget中的一行
- 通过C 的CSV读取和写入单元格