為什麼這篇Fscanf用法鄉民發文收入到精華區:因為在Fscanf用法這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者aa12310 (被陰了的我)看板C_and_CPP標題[問題] fscanf的用法時間Sat ...
*[1;36m開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)*[m
VS C++
*[1;36m有問題的code: (請善用置底文標色功能)*[m
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
struct FileIn
{
int nF;
float fG;
int nH;
int nI;
char cJ[10];
float fK;
float fL;
float fM;
int nN;
float fZ;
}csvfile;
int main()
{
FILE *fp1 = fopen( "grp_21.csv" , "r" );
if( fp1 == NULL )
{
printf( "開檔錯誤" );
exit(1);
}
fscanf( fp1 , "%d,%f,%d,%d,%s,%f,%f,%f,%d,%f\n" ,
&csvfile.nF , &csvfile.fG , &csvfile.nH , &csvfile.nI , &csvfile.cJ ,
&csvfile.fK , &csvfile.fL , &csvfile.fM , &csvfile.nN , &csvfile.fZ , );
printf( "%s" , csvfile.cJ );
fclose(fp1);
system( "pause" );
}
遇到的問題: (題意請描述清楚)
我用fscanf讀取檔案資料
一筆資料中有整數,小數點,中文
檔案中分別用逗號隔開
當我讀到中文字的時候
我設定的是%s
而跑到這項的時候
後面的資料全部都寫入cJ之中
%s之前的資料分別讀都是正確的
%s後面的資料都是空的
希望得到的正確結果:
讓%s只單獨存字元就好
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.138.178.67