我有一個文件,該文件存儲在用戶的輸入(標準輸入)串在文件的結尾刪除新的空行
然而,有2種情況
如果我正常讀取它,我的文件將有由於用戶引入的最後一個字符串中的換行符,在其末尾處爲空行。
如果我從輸入字符串中刪除\n
,則文件將所有字符串存儲在同一行中,這是不需要的。
如何從文件末尾簡單地刪除該新行?
如果需要,我可以編輯並提供一些我的代碼。
編輯:比方說,一個文件我已經有了的最後一行是「卡」
當光標在「卡」前,如果我按向下箭頭它不轉到下一行,而在這種情況下,它可能發生一次。
對於我的代碼功能完美,我不能讓這種情況發生,
這裏是什麼,我有一個例子:
f=fopen(somefile, "w");
do
{
fgets(hobby, 50, stdin);
fprintf(f, "%s", hobby)
} while(strcmp(hobby,"\n") != 0);
你如何閱讀這些文字?你如何儲存這些線?你在哪裏儲存線?你能否請嘗試創建一個[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)並向我們展示? –
如果您使用奇怪的編輯器來查看它,它只會在其末尾顯示一條空行。通常情況下,唯一不以'\ n'結尾的文本文件是空文件(包含0行)。 – melpomene
也許你正在用文本編輯器查看文件,並認爲有一個「額外的行」,因爲光標位於下一行。事實並非如此,那只是下一行尚未存在的第一個字符的打字位置。 –