讀取的數據這個程序的目的是要讀取的文件,並用每行62個字符格式化。這個程序編譯和部分工作,大多數行是62個字符或更少,但是一些行實際上是64個字符。格式化從txt文件
我想知道我怎麼得到它的打印字符62或以下的所有行?
#include <stdio.h>
#include <string.h>
#define _CRT_SECURE_NO_DEPRECATE
void output(char *wbuf, char *lbuf);
void readFile(FILE *getty, char *wbuf, char *lbuf);
FILE *getty;
static int lineLength = 62;
int main(void) {
char wbuf[1000] = {0}, lbuf[1500] = {0};
if (fopen_s(&getty,"getty.txt", "r") != 0)
printf("Failed to open getty.txt for reading.");
else {
readFile(getty, wbuf, lbuf);
}
fclose(getty);
return 0;
}
void readFile(FILE *getty, char *wbuf, char *lbuf) {
int count = 0;
while (!feof(getty)) {
if (fscanf(getty, "%s", wbuf) > 0) {
strcat(wbuf," ");
output(wbuf, lbuf);
}
}
printf("%s\n",lbuf);
}
void output(char *wbuf, char *lbuf) {
int wbufLength=0, lbufLength, i = 0;
wbufLength = strlen(wbuf);
lbufLength = strlen(lbuf);
if ((wbufLength + lbufLength) <= lineLength) {
strcat(lbuf,wbuf);
}
else {
strcat(lbuf,"\n");
lineLength += 62;
strcat(lbuf, wbuf);
}
}
輸出: 四個得分87年前,我們的祖先帶來了,即所有的人都創建// 58個字符 在這個大陸,一個新的國家,孕育於自由之中,並 致力於平等的命題。現在// 64個字符 我們正從事一場偉大的內戰,以考驗這個 國家,或者任何一個國家,那麼懷孕,所以專用,可以長期忍受 。我們在這裏遇到了這場戰爭的偉大戰場。 我們來到這裏,奉獻它作爲最後的安息 地方對於那些誰在這裏獻出了生命是這個國家 能夠生存下去的部分。我們應該 這樣做是完全合適和適當的。但從更大的意義上說,我們不能奉獻 - 我們可以不奉獻 - 我們不能使這個場地變得神聖。勇敢的人,在這裏奮鬥的生活和死亡的人,已經把它遠遠地奉獻給我們,遠遠超過我們的不良力量來增加或減少。這個世界將很少有 注意,也不會長久記得,我們在這裏說什麼,但絕不能忘記他們在這裏做了什麼。這是我們活着的人,而到 應該獻身於他們有未完成的工作,從而 遠,如此高尚進行的。在這裏,我們寧願在這裏致力於完成我們面前的偉大任務,即從這些 榮譽的死亡中,我們對 增加了對這項事業的熱愛,他們在這裏給出了最後的全部奉獻 - 我們 在這裏高度地解決這些死者不會在 枉死;這個國家將有一個新的自由誕生;並認爲這個人民的政府,人民,爲了人民,不會從地球上滅亡。
感謝您的幫助。 – randomname