| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3243 人关注过本帖, 1 人收藏
标题:CSV合并的问题
只看楼主 加入收藏
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
结帖率:97.66%
收藏(1)
已结贴  问题点数:20 回复次数:72 
CSV合并的问题
这样写每次都只读取第一行的资料,要怎么改才能将多个CSV档案合并成一个?
假设有300个CSV档,每个档案有1000多行,要合并成一个.
0000.csv ... 0300.csv => AAA.csv
程序代码:
void MergeCSV(int fl,char *Tmp, char *TmpFileNameStr1,int TC)
{
    FILE *stream2,*stream3;
    int i=0,j=0;
    char TempString[Max_Size]={0},temp[Max_Size]={0};

    stream2 = fopen(TmpFileNameStr1, "a+" );
    for (i=0;i<(TC+6);i++)
    {
        for (j=0;j<fl;j++)
        {
            sprintf(TempString,"%s%04d.csv",Tmp,j);
            stream3 = fopen( TempString, "r" );
                if (fgets(temp, Max_Size, stream3)!=NULL)
                {
                    int ii=strlen(temp);
                    temp[ii-1]='\0';
                    fprintf(stream2,"%s",temp);
                }
            fclose(stream3);
            memset(TempString,0,sizeof(TempString));
            memset(temp,0,sizeof(temp));
            fflush(stream2);
        }
        fprintf(stream2,"\n");
    }
    fclose(stream2);
}


P.S 资料量很大,无法一次全部读入内存中.

[ 本帖最后由 wube 于 2015-3-9 12:23 编辑 ]
搜索更多相关主题的帖子: 资料 
2015-03-09 12:19
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:10 
上傳數據文檔咯

授人以渔,不授人以鱼。
2015-03-09 12:33
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:10 
程序代码:
#include <windows.h>
#include <string.h>

int main(int argc, char **argv) {
    char cmd[1024] = "copy ";
    char add[] = " + ";
    char arg[] = " /b ";
    int i = 0;

    if(argc >= 4) {
        while(++i < argc - 2) {
            strcat(cmd, argv[i]);
            strcat(cmd, add);
        }

        strcat(cmd, argv[i]);
        strcat(cmd, arg);
        strcat(cmd, argv[++i]);
        system(cmd);
    }

    return 0;
}

Only the Code Tells the Truth             K.I.S.S
2015-03-09 12:41
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
回复 3楼 longwu9t
你知道他的文檔不含列名行?

授人以渔,不授人以鱼。
2015-03-09 12:44
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
他在vb論壇發的問題可不是要求這樣處理。

授人以渔,不授人以鱼。
2015-03-09 12:48
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:0 
我只提供个思路 具体的数据自行处理

Only the Code Tells the Truth             K.I.S.S
2015-03-09 12:52
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
如果是那樣,也不用編程,直接用批處理就可以了。呵~呵~

授人以渔,不授人以鱼。
2015-03-09 12:54
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
放點資料以備參考
图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册


授人以渔,不授人以鱼。
2015-03-09 13:06
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
數據文檔...
111.rar (1.15 MB)

不要選我當版主
2015-03-09 13:07
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
根據以上的資料,可知這要看樓主想怎麽處理、處理到什麽程度。

授人以渔,不授人以鱼。
2015-03-09 13:07
快速回复:CSV合并的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013891 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved