• ベストアンサー

改行のことで

Tinteの回答

  • Tinte
  • ベストアンサー率45% (27/60)
回答No.1

そこら辺りの機能に詳しい者ではないので間違っているかもしれませんが、標準入力に入ってくるCRLFの改行コードは自動的には変換されないと思います。なので用途に応じて自分で改行コードを調節するのが一番いいと思います。 どのような端末やプログラム言語を使うのかにもよりますが、例えばWindows同士での改行コードの変換は必要ないですし、スクリプトで文字列を処理する場合などは、改行コードを一度削除していろいろと処理をしてから最後に適当な改行コードをつけて出力したりすることと思います。

harusan90
質問者

お礼

回答していただき有難うございます。

関連するQ&A

  • 改行コードについて

    改行コードがよく解らないので説明お願いします 様々なサイトの改行コードの説明で LinuxはLF MacはCR WindowsはCRLFと説明しています 私の認識では LF=\n CR=\r CRLF=\r\n だと思っていました ここで疑問なのですが 確かに私の利用した環境ではLinuxの改行コードは\n, Windwosの改行コードは\r\nでした ところがMacの標準のメモ帳(テキストエディット)で文字を入力しても改行コードは\nです 確認方法は od -cというコマンドとfileというコマンドです これはつまりCRではなくLFということですよね? では、なぜ多くのサイトではMacはCRと説明しているのでしょうか? そもそもCR=\rという認識が間違ってるのでしょうか? よろしくお願いします

  • 改行コードについて

    HTMLフォームのテキストエリアで改行した場合の処理についてご質問します。 Windowsのローカル環境で試しています。 改行コードLFでPHPを作成しています。 ○改行コードの認識 LF(\n) Unix,Mac OS X CR(\r) Mac OS 9 CRLF(\r\n) ○テキストエリアからの入力値の処理 CRLF、CRをLFに変換しています。 $value= str_replace ("\r\n", "\n", $value); $value = str_replace ("\r", "\n", $value); このあとDBに値を格納しています。 ○出力の際の処理 DBから値を取得。 phpのprint関数で下記を出力。 <textarea >${value}</textarea> 上記処理で、ローカル、サーバともに正常に動作しています。 しかし改行コードがLF(\n)なのでCRLF(\r\n)のWindowsで表示したときには問題が起きそうな気がします(実際には正常に動作)。 なにかしっくりこなくて質問させていただきました。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • Solaris上のC言語でCRLFのファイル作成は

    こんばんは。 Solarisの環境下で、 ファイルをオープン&編集&別ファイルを作成する処理において、 改行コードをCRLFにしたいと考えています。 プログラムはC言語で作成されています。 生成後のファイルは、文字コード:EUC、改行コード:LFで作成されています。 今回は、文字コード:SJIS、改行コード:CRLFで作成したいです。 現在、「\n」で、改行コードをLFとして作成しているようです。 この改行コードをCRLFにしたい、という意味です。 ファイルレコードの行末に「\n」を入れている処理の個所を、 「\r\n」に変更すれば、CRLFになるのでしょうか? プログラミング言語の仕様というよりは、 その実行モジュールが、どこのOS上で動くかに左右されるような気もしているのですが、どうでしょうか? よろしくお願いします。

  • 改行コードを自動変換してくれるFTPクライアント

    テキストファイルをアップロードするときに、改行コードを自動変換してくれるFTPクライアントを探してます。 今まではFFFTPを使用していたのですが、このソフト、自動で改行コードを変換してくれないようです。 サーバーの漢字コードにEUCを選択し、転送モードをアスキーにして転送してみましたが、改行コードはCRLFのままでした。 テキストファイルのアップロードではFTPソフトが自動で改行コードを変換してくれるものだと思い込んでいたのですが。。。 やりたいことは、Windowsで作ったS-JIS/CRLFのテキストファイルを、漢字コードはS-JISのままで改行コードだけをLFのみに自動変換してLinuxサーバーにアップロードしたいのです。 質問としては、 (1), FFFTPで、自動で改行コードのみを変換し、漢字コードはそのままでアップロードする方法がありましたら教えてください。 (2), もし、(1)ができないようでしたら、他のソフトでお勧めがありましたら紹介してください。 できれば、FFFTPのように、ビューワにメモ帳など自分の好きなアプリケーションを指定できる機能があれば助かります。 宜しくお願いします。

  • 正規表現 改行直後の文字列

    例として以下のような文字列があったとします。 --------------- a b c --------------- ※a,b,cの後ろは改行コード(CRLF) 置換で直後の文字が「b」である改行コードのみ削除する場合、 どのように正規表現で入力すればよいのでしょうか。 期待値は以下の通りです。 --------------- ab c --------------- ※ \r\n(?=^b)でためしてみましたが、うまくいかなかったです。。。

  • 改行コードについて

    ファイルの文字コードはutf-8で改行コードはLFです。 メール送信時にメール文面の一部にいれるテキストを mysqlに保存しています。 メール送信のソース内でデータを読み込み送信までは できているのですが改行コードを変換したく $msg = str_replace("\r\n", "\n", $msg); とやってみましたが改行されず普通に\r\nと表示され うまく変換ができません。 いろいろと試した結果以下のソースでは正常に改行されました。 $msg = str_replace("\\r\\n", "\n", $msg); メール送信前にデバッグでしてみましたが読み込むデータの 改行部分は\r\nとなっているのは確認済みです。 \を多くつければ改行はできるようなのですがこれは仕様なの でしょうか? またmysqlに入れてあるデータはフォームから入力し登録 しているのですがLFの改行コードは\nなので登録時に\r\nではなく \nと変換してからmysqlに登録するのがいいものなのでしょうか?

    • 締切済み
    • PHP
  • 改行コードが半角スペースになってしまいます

    もしかしたらカテゴリはphpかも知れません。 よろしくお願いします。 phpとMySQLでWEBアプリを作っています。html上のtextareaフォームに入力した文字列を、phpを使ってMySQLにINSERTします。この文字列には改行(CRLF)も含まれます。 それをSELECTで参照し表示させると、改行が半角スペースに変換されてしまいます。 phpMyAdminで見てみるとちゃんと改行が入っています。 つまり、格納の段階ではちゃんと改行コードが入っているんですが、取り出すときに変換されてしまうようです。 この場合、どのように対処すればいいのでしょうか?

    • ベストアンサー
    • MySQL
  • 素朴な質問です。¥nと\nの違い!

    最近、C言語の勉強を初めてばかりですが、 本を見ながらソースをテキストで打っていますが、改行(¥n)で表現されているので その通りの入力するとコンパイル時に改行されず¥nのまま表示されます。 いろいろ調べた結果(\n)に変換すると改行してくれました。 ¥nと書かれているものと\nで書かれているものがあるようですが、どのように理解すれば よいのでしょう?キーの位置は同じですが、option+¥で\nになります。(Macです) コンパイラによって違うのでしょうか? どなたか教えてください?

  • textareでの改行

    ホームページ上のtextareaで入力してもらった情報を取得するCGI(perl)スクリプトを書いています。流れとしては,フォーム上で入力した情報をCGIで取得→確認画面を表示→問題無ければメールフォームとして送信,となっています。 このスクリプト上で問題となっているのが,textareaでは自動的に改行処理(wrap=softと同じ?xhtmlで書いているので,wrap属性は指定していません。)するときに入力される改行コードと,入力者が意図的に入力する改行コードを判別出来ないということです。自動的に挿入される\n(0x0A)を削除しようとスクリプト上で, $text =~s/\r\n/\n/g; $text =~s/\r/\n/g; $text =~s/\n//g; と入れたところ,全ての改行コードが変換処理されてしまい,入力者が意図的に入れた改行コードまで処理されてしまいます。 スクリプト上,もしくはxhtmlと組み合わせて,自動的に挿入される改行コードだけを消去して,意図的に入力した改行コードだけを残す処理は出来ないものでしょうか? phpなどを使うと出来るようですが,ある程度perlのcgiで作成してしまったので,このままで出来ればと思っています。よろしくお願いします。

  • Windows標準機能での改行コード変換方法について

    いつも利用させて頂いております。 nopo3です。 掲題の通りなんですが、 Windows上で作成したファイル(SJIS/CRLF)の 文字コード、改行コードをEUC/LFに変換したいと 思っています。 フリーソフト等で変換をする事は可能ですが、 実際にWindows標準機能で変換する方法はあるのでしょうか? テキストをIEで開き、エンコードをすれば、文字コードは変換されるのですが、改行コードを変換することができませんでした。 スクリプトを組まないと駄目なんでしょうか? 御教授御願致します。