線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:901
推到 Plurk!
推到 Facebook!

要如何讀取格式化的資料並顯示在螢幕上?

尚未結案
metals753
一般會員


發表:7
回覆:3
積分:2
註冊:2005-05-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-10-18 14:32:35 IP:218.167.xxx.xxx 未訂閱
我想了一個早上 還是抓不到方向 要寫一個程式讀取以下的資料:    11 12 13 ;ABC  22 23  31: 32 33 ;DEF    ------------- (有空格的地方,都必須空格) 若選擇 1.標記資料 11 31    2.OP Code 12 22 32    3.  Operand 13 23 33    4. Comment ABC DEF    以下是我自己想出來的方向不過好像都行不通  
#include 
#include     void main()
{
        FILE *fptr;
        //char ka,kb;
        int ch,z,cb,ka,kb;
        fptr=fopen("test.asm","r");
        cout<<"1.標記資料  2.OP Code  3.Operand  4.Comment\n";
    cin>>z;
    
        switch(z)
        {
    case(1):
                while((ch=fgetc(fptr))!=EOF)
                
                {                            if(ch==32)
                        {
                                ka=fgetc(fptr);
                                kb=fgetc(fptr);
                                cb=fgetc(fptr);
                                //if(cb=8);
                                if(cb==58)
                                 if(ka>=48&&kb<=57)printf("%c%c ",ka,kb);
                        }
                    else if(ch>=48&&ch<=57)printf("%c",ch);
                                            }
     break;
         
        }
                fclose(fptr);
} 
請各位大大指點一下給個方向或範例 謝謝!!
haman
中階會員


發表:46
回覆:137
積分:56
註冊:2005-03-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-10-19 21:10:17 IP:211.76.xxx.xxx 未訂閱
建議用fgets做,一次讀一整行,再下去拆解字串 因為你每行字串的長度不一定一樣, 在while迴圈中連用3~4次fgetc有可能會讀到超出檔案大小(超過edf的點) 再來是字串的組合、判別也比較麻煩 ==================================== 懂的不多,卻想學的更多,搞得不自覺的將問題複雜化@@
系統時間:2024-05-11 0:13:00
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!