PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 其他群組 > 七嘴八舌異言堂
帳戶
密碼
 

回應
 
主題工具
大鳥
Junior Member
 
大鳥的大頭照
 

加入日期: Aug 2000
您的住址: 中外野
文章: 716
請教C語言問題

請問C語言在讀文字檔的時候要怎麼換行呢?
比如有一個文字檔的內容是

123456
456789
789123

我都只能讀到123456而已


請問要讀到下面的資料呢?
謝謝
     
      
__________________
累了就睡, 醒了就拼命努力做該做的事, 對一件事, 專心用力, 持之以恆, 就會有神通
格鬥天王打棒球
舊 2004-05-05, 01:57 AM #1
回應時引用此文章
大鳥離線中  
harrisonlin
Advance Member
 
harrisonlin的大頭照
 

加入日期: Jun 2003
您的住址: Taipei
文章: 442
程式碼貼上來看看吧!
 
__________________
現今世道,自爆文當故事書,站長的話做成語錄,幾百年前的文章嘛沒事就挖出來考古...
舊 2004-05-05, 02:13 AM #2
回應時引用此文章
harrisonlin離線中  
蝙蝠俠
Power Member
 
蝙蝠俠的大頭照
 

加入日期: Dec 2001
文章: 581
回覆: 請教C語言問題

引用:
Originally posted by 大鳥
請問C語言在讀文字檔的時候要怎麼換行呢?
比如有一個文字檔的內容是

123456
456789
789123

我都只能讀到123456而已


請問要讀到下面的資料呢?
謝謝

請問你是把它讀成什麼格式阿!?
若是用int存
它會自動辨別input檔
讀個三次不就好了嗎!?


int a[3];
in=fopen("input.txt","r");

for(i=0;i<3;i++){
fscanf(in,&a[i]);
}

還是說樓主是其他的意思!?

小弟已經很久沒碰C了
有錯還請見諒阿~~
舊 2004-05-05, 02:32 AM #3
回應時引用此文章
蝙蝠俠離線中  
大鳥
Junior Member
 
大鳥的大頭照
 

加入日期: Aug 2000
您的住址: 中外野
文章: 716
void main()
{
FILE *fp;
char getstring[100];
char filename[128]="a.txt";
if((fp = fopen(filename, "r")) !=NULL)
{
printf("OPEN DOEN!");
}

fgets(getstring,20,fp);
printf("\n");
printf("%s",getstring);

fclose(fp);
}
假如a.txt裡面的內容是
123456
456789
789123

照以上的程式都只印的出
123456

請問讀檔的時候要怎麼換行呢?
其實只是很小的程式
可是我第一次要讀檔
不太會用

希望知道的人可以跟我說一下
謝謝
__________________
累了就睡, 醒了就拼命努力做該做的事, 對一件事, 專心用力, 持之以恆, 就會有神通
格鬥天王打棒球
舊 2004-05-05, 02:33 AM #4
回應時引用此文章
大鳥離線中  
Rhoads
*停權中*
 
Rhoads的大頭照
 

加入日期: Jun 2001
文章: 989
我沒學過c 不清楚c的寫法
不過剛剛查一下msdn 或許是你用錯function

fgets, fgetws
EX:
Input: crt_fgets.txt
Line one.
Line two.
Output
Line one.

fgetc, fgetwc, _fgetchar, _fgetwchar
EX:
Input: crt_fgetc.txt
Line one.
Line two.
Output
Line one.
Line two.
舊 2004-05-05, 03:14 AM #5
回應時引用此文章
Rhoads離線中  
Derek-X
Major Member
 

加入日期: May 2002
您的住址: 你隔壁
文章: 185
fgets(getstring,20,fp);
printf("\n");
printf("%s",getstring);
=========
代碼:

while(fgets(getstring,20,fp)){
 printf("\n");
 printf("%s",getstring);
}
__________________
intentionally left blank
舊 2004-05-05, 03:17 AM #6
回應時引用此文章
Derek-X離線中  
Rhoads
*停權中*
 
Rhoads的大頭照
 

加入日期: Jun 2001
文章: 989
引用:
Originally posted by Derek-X

代碼:

while(fgets(getstring,20,fp)){
 printf("\n");
 printf("%s",getstring);
}

高手出現了 我猜fgets這個function是單行取出ㄅ...
不過getstring本身讀到'\n'了
代碼:

 printf("\n");
while(fgets(getstring,20,fp)){
 printf("%s",getstring);
}
 printf("\n");


此文章於 2004-05-05 03:36 AM 被 Rhoads 編輯.
舊 2004-05-05, 03:27 AM #7
回應時引用此文章
Rhoads離線中  
crazyjack
Basic Member
 
crazyjack的大頭照
 

加入日期: Aug 2003
您的住址: 洛杉磯
文章: 19
#include <stdlib.h>
#include <stdio.h>

void main()
{
FILE *fp;
char getstring[100];
char filename[128]="a.txt";
int count = 0;

if((fp = fopen(filename, "r")) !=NULL)
{
printf("OPEN DOEN!\n");
}

while(!feof(fp)) //check if it is END OF FILE
getstring[count++] = getc(fp);

printf("%s",getstring);

fclose(fp);
}
舊 2004-05-05, 03:37 AM #8
回應時引用此文章
crazyjack離線中  
大鳥
Junior Member
 
大鳥的大頭照
 

加入日期: Aug 2000
您的住址: 中外野
文章: 716
先謝謝各位的幫忙囉
我等下就試試看
__________________
累了就睡, 醒了就拼命努力做該做的事, 對一件事, 專心用力, 持之以恆, 就會有神通
格鬥天王打棒球
舊 2004-05-05, 09:36 PM #9
回應時引用此文章
大鳥離線中  


回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是07:59 AM.


vBulletin Version 3.0.1
powered_by_vbulletin 2024。