#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 函数:创建并写入CSV文件的第一列字符
void createCSVFileWithFirstColumn(const char *outputFilePath) {
FILE *csvFile = NULL;
errno_t err = fopen_s(&csvFile, outputFilePath, "w");
if (err != 0 || csvFile == NULL) {
printf("无法创建或打开文件 %s\n", outputFilePath);
return;
}
// 写入字符串到CSV文件的第一列
fprintf(csvFile, "\"a1\"\n");
fprintf(csvFile, "\"a2\"\n");
fprintf(csvFile, "\"e3\"\n");
fclose(csvFile);
printf("字符串已成功写入到 %s 的第一列\n", outputFilePath);
}
// 函数:将两个txt文件内容写入CSV文件的第二列
void appendToCSVFile(const char *outputFilePath, const char *filePath1, const char *filePath2) {
FILE *csvFile = NULL;
errno_t err = fopen_s(&csvFile, outputFilePath, "a");
if (err != 0 || csvFile == NULL) {
printf("无法打开文件 %s\n", outputFilePath);
return;
}
// 读取并写入第一个txt文件
FILE *file1 = NULL;
err = fopen_s(&file1, filePath1, "r");
if (err == 0 && file1 != NULL) {
char line[1000];
while (fgets(line, sizeof(line), file1) != NULL) {
// 去除行尾的换行符
line[strcspn(line, "\n")] = '\0';
// 写入CSV文件的第二列,并添加逗号分隔符
fprintf(csvFile, ",\"%s\"", line);
}
fclose(file1);
}
// 读取并写入第二个txt文件
FILE *file2 = NULL;
err = fopen_s(&file2, filePath2, "r");
if (err == 0 && file2 != NULL) {
char line[1000];
while (fgets(line, sizeof(line), file2) != NULL) {
// 去除行尾的换行符
line[strcspn(line, "\n")] = '\0';
// 写入CSV文件的第二列,并添加逗号分隔符
fprintf(csvFile, ",\"%s\"", line);
}
fclose(file2);
}
fclose(csvFile);
printf("文件内容已成功写入到 %s 的第二列\n", outputFilePath);
}
int main() {
const char *filePath1 = "D:\\Visual_studio\\Project\\Project1\\txt2csv\\test1.txt";
const char *filePath2 = "D:\\Visual_studio\\Project\\Project1\\txt2csv\\test2.txt";
const char *outputFilePath = "D:\\Visual_studio\\Project\\Project1\\txt2csv\\output.csv";
// 检查output.csv文件是否存在
FILE *checkFile = NULL;
errno_t err = fopen_s(&checkFile, outputFilePath, "r");
if (err != 0 || checkFile == NULL) {
// 如果output.csv不存在,创建并写入第一列字符
createCSVFileWithFirstColumn(outputFilePath);
}
else {
fclose(checkFile);
}
// 将两个txt文件内容写入output.csv的第二列
appendToCSVFile(outputFilePath, filePath1, filePath2);
return 0;
}
txt2csv
最新推荐文章于 2024-07-19 11:31:18 发布