我的csv文件采用以下方式格式化:
var element1 = document.createElement("script");
element1.src = "js/file3.concat.min.js";
document.body.appendChild(element1);
我想以这种方式存储数据:
0,0,46,#FFFFFF,#000000
我为解析每一行所做的功能就像:
typedef struct {
char x[2];
char y[2];
char asc[3];
char fore[7];
char back[7];
}LINE;
}
一切顺利,直到Linea.fore,在输出中,Linea.fore显示“#FFFFFF#000000”并且其strlen为14,就像while循环从未找到“,”分隔这些值。但是Linea.back的价值和len都是正确的。
我认为这是关于char数组处理的问题。
谢谢!
答案 0 :(得分:1)
遵循相同的逻辑,根据您定义的
char x[2];
char y[2];
你需要
char fore[8];
char back[8];
使用null-termination存储完整数组(根据您的输入)。
答案 1 :(得分:0)
您错过了前字段上的\ 0-terminator,因此strlen en printf函数会看到前和后字段在一起。