Last active
December 10, 2015 17:19
-
-
Save alphaKAI/4467301 to your computer and use it in GitHub Desktop.
今日完成した今日の成果 品詞IDによって違うファイルに振り分ける処理
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include "my_lib.h" | |
//copyright (C) alpha_kai_NET All rights reserved. 2012-2013 alpha-kai-net.info | |
//GPLv3 LICENSE | |
int main(void){ | |
//RetrunStrings | |
char filename[]= "data.txt"; | |
char data2[]= "data2.txt"; | |
char str[1000]; | |
char fstr[1000]; | |
int return_sum; | |
//main | |
int i; | |
int num; | |
int sum; | |
int dum; | |
int kum; | |
char tmp[260]; | |
char tmpf[]= "tmp.txt"; | |
int posid; | |
FILE *fp; | |
FILE *ftmp; | |
//一時的に分解 品詞iD TAB 品詞のformatでdata2.txtに出力 | |
num=system("mecab -F \"%h\\t%m\\n\" -E \"\" data.txt -o data2.txt"); | |
num=check(data2); | |
if(num==0){ | |
printf("ERROR:\n"); | |
printf("カレントディレクトリに%sがありません\n", data2); | |
printf("終了します\n"); | |
return 1; | |
} | |
dum=check(filename); | |
if(dum==0){ | |
printf("ERROR:\n"); | |
printf("カレントディレクトリに%sがありません\n", filename); | |
printf("終了します\n"); | |
return 1; | |
} | |
else if(dum==1){ | |
sum=how_line(filename); | |
for(i=1; i<=sum; i++){ | |
return_sum = ReturnStrings(data2, i, fstr, 1000); | |
if(return_sum!=0){ | |
switch(return_sum){ | |
case -1: | |
printf("ファイルオープンに失敗\n"); | |
return -1; | |
break; | |
case -2: | |
printf("データ取得失敗\n"); | |
return -2; | |
break; | |
default: | |
printf("返り値が異常です\n"); | |
return return_sum; | |
break; | |
} | |
} | |
sscanf(fstr, "%d\t%s", &posid, str); | |
sprintf(tmp, "word/%d.txt", posid); | |
kum=check(tmp); | |
if(kum==1){ | |
fp=fopen(tmp, "ab"); | |
} | |
else if(kum==0){ | |
fp=fopen(tmp, "wt"); | |
} | |
fprintf(fp, "%s\n", str); | |
fclose(fp); | |
} | |
} | |
else{ | |
printf("ERROR:\n"); | |
printf("ファイルチェックの返り値が異常\n"); | |
return 3; | |
} | |
printf("Complete\n"); | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment