- ベストアンサー
perlで作成したファイルが改行がこわれる
ここでよいのか解りませんが、質問させてください。 turbo linux6.5環境で、perlを使いデータ編集を行っています。 出力したファイルの文字コードはSJISになっています。 ただこのファイルをFTPでダウンロードすると改行部分がおかしくなっています。 秀丸などのエディタから見ると改行が入ったように見えるのですが、メモ帳で見ると、改行部分が縦棒記号に変っていて改行が入っていません。 対処方法を知っているかた教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Perlをつかってるなら、出力するときに行の最後を\nじゃなくて、chr(13) . chr(10)にするとよいでしょう。
その他の回答 (1)
- Spur
- ベストアンサー率25% (453/1783)
回答No.1
UNIXサーバでは改行コードが「LF」で、Macは「CR」 そしてWindowsは「CR+LF」です。 Linuxから改行コードを変換せずにftpしたファイルをWindowsのエディタで見れば、「CR」がありませんので、当然改行せず、どんどn続いてしまいます。そして、「LF」の部分は表示できないので縦棒のようになります。 ftpの時に改行コードを変換できるftpツールを使うか、ダウンロードした後で改行コードを変換してください。
質問者
お礼
回答ありがとうございます。 linuxとwindowsで改行コードが違うのを忘れていました。SJISとEUCの違いかと思って調べていました。 「CR+LF」の違いは勉強になりました。 ありがとうございます。
お礼
回答ありがとうございます。 chr(13) . chr(10)に変えてできました。 あせっていたので、大変助かりました。