前提・実現したいこと
はじめまして
私はC言語でタブ区切りの数値データファイルの読み込みを以下のソースコードを使って読み込むことを試しております.その際,例えば以下のような4x4の配列データを読み込むとき,そのデータ(missing_value.tsv)に数値抜けがあった場合に適当な値(例えば0)などで補完して配列を読み込みたいと考えております(下記のデータ3行目は0 tab tab tab 3となっており, 1と2が抜けている状態です).
もしよい方法等ご存じでしたらご教授いただければ幸いです。
何卒よろしくお願い申し上げます.
read_tsv.cpp
C言語
1#include <stdio.h> 2 3int main(void){ 4 5 int i, j; 6 int x = 4, y = 4; 7 double A[x][y]; 8 9 //file open 10 FILE *file; 11 file = fopen("missing_value.tsv","r"); 12 if(file == NULL){ 13 printf("File not opened\n"); 14 return 0; 15 } 16 17 //read data 18 for(i=0; i<x; i++){ 19 for(j=0; j<y; j++){ 20 fscanf(file, "%lf", &(A[i][j])); 21 } 22 } 23 24 //file close 25 fclose(file); 26 27 //display data 28 for(i=0; i<4; i++){ 29 for(j=0; j<4; j++){ 30 printf("%lf ", A[i][j]); 31 } 32 printf("\n"); 33 } 34 return 0; 35 36}
missing_value.tsv
C言語
10 1 2 3 20 1 2 3 30 3 40 1 2 3
回答3件
あなたの回答
tips
プレビュー