web-dev-qa-db-ja.com

Windowsのメモ帳は改行文字をサポートしていません '\ n'

IPhoneアプリケーションから、テキストからファイルにデータを出力しています。 Windowsのメモ帳で開くと、データはすべて1行にあり、新しい行があるはずの場所にブロック文字が存在します(認識されない文字か何かであることを示します)。 Windowsのワードパッドで開くと、問題なく表示されます。
コードに何か問題がありますか?新しい行が必要なときは、単に「\ n」を出力します。

enter image description here

注:テキストエディット、MacのMS Word、Windowsなどの他のエディターでも問題なく動作します。

17
Ankur

Windowsのデフォルトでは、行末マーカーとして\r\nを使用します。メモ帳は、他のテキストエディタが他の行末スタイルを認識して正しくレンダリングする可能性があることのみを認識します。

22
Hans Kesting

新しい行が必要なときは、単に「\ n」を出力します。

そして2018年5月(6年後)から、あなた改行を取得します!

" メモ帳での改行サポートの導入 " by Michel Lopez (および 彼のツイート )を参照してください。

長年にわたり、Windowsのメモ帳は、Windowsの行末(EOL)文字(キャリッジリターン(CR)とラインフィード(LF))を含むテキストドキュメントのみをサポートしていました。これは、メモ帳がUnix、Linux、およびmacOSで作成されたテキストファイルの内容を正しく表示できなかったことを意味します。

本日、この問題を修正したことをお知らせします!

現在のWindows 10 Insiderビルド以降、メモ帳はUnix/Linuxの行末(LF)、Macintoshの行末(CR)、およびWindowsの行末をサポートします。 (CRLF)いつものように。

メモ帳内で作成された新しいファイルは、デフォルトでWindows行末(CRLF)を使用しますが、ファイルの現在の行末形式を正しく維持しながら、既存のファイルを表示、編集、および印刷できるようになります。

また、ステータスバーには、現在開いているファイルで検出されたEOL形式が表示されることに注意してください。

最終的に正しく表示された.bashrcを参照してください!

https://msdnshared.blob.core.windows.net/media/2018/05/Notepad-after.png

6
VonC

これは、\nがWindowsの完全な改行を表していないためです。 \nの使用は、改行を行う「Unix」の方法です。

Windowsには、両方を処理するNotepad ++のようなテキストエディタがありますが、Notepadはその点で本当にばかげています。

IPhoneアプリケーションで、ユーザーがWindowsとUnixの行末を選択できる設定を作成することをお勧めします-それは彼の責任です:-)

3