字串分割問題... |
尚未結案
|
lonielonies
一般會員 發表:6 回覆:0 積分:1 註冊:2005-04-17 發送簡訊給我 |
我之前有po了一篇文章,有兩位大大幫我解釋後
有些地方也比較懂了,就如同其中一位說的
我是因為用fread去讀入,所以會有亂碼出現
我更改方法後,
先讀入一行,然後紀錄此字串中逗號的位置
然後再進行字串切割,可是我認為我沒寫錯
前面幾個字串分割也沒錯,但是不知道為啥最後一個字串會是亂碼
下面是我的程式碼
FILE *fptr;
char a[50];
char lonie[6][11];
int getin[6]={0};
int i,counter,x,y,z;
counter=0;
fptr=fopen("import.txt","rb"); <==檔案開啟
if(fptr!=NULL) <==偵測是否開啟成功
{
cout << "檔案開啟成功" << endl;
cout << "日期\t店名\t地區\t筆記型\t 桌上型\t PDA\t " << endl;
for(i=0;i<3;i ) <==讀入檔案三次,也就是讀三行
{
counter=0;
fgets(a,50,fptr);
for(x=0;x
|
supman
尊榮會員 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
您好:
以下程式讓您參考,您會有亂碼應該是沒有填入結尾字元'\0',有控您可以將切割字串寫成函數,以方便未來使用,不然c在處理字串真的滿麻煩的.
void main(void) { char S[81],Record[3][6][20];//假設有3行,六各欄位,每欄最多20bytes int i,j,k,l,Len; FILE *fp; i=l=0; fp=fopen("test.txt","r"); for (k=0;k<3;k ) { if (fgets(S,sizeof(S),fp)==NULL) break;//讀到尾了就中斷 Len=strlen(S); for (j=0;j |
windblown
中階會員 發表:0 回覆:117 積分:98 註冊:2003-11-14 發送簡訊給我 |
請參考下面的程式碼,並比對你自己的程式,可能對你有些幫助!!
#include發表人 - windblown 於 2005/04/18 10:38:51 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |