プロが教えるわが家の防犯対策術!

テキストボックスでmultilineをtrueにした場合
改行が¥nでは出来ずに
Environment.NewLineを使わなければ改行できませんでした。
何故だか教えていただきたいです。

A 回答 (5件)

改行コードは環境依存なので


Environment.NewLineを使う事はむしろ正しいと思います。

では何故"\r\n"が駄目かですが私の環境では問題ないのでわかりません。
OSはWindowsXpでしょうか?

"\r\n"で改行できないマシンで
string test = Environment.NewLine;
char[] chArray = test.ToCharArray();
としchArrayにどういう文字コードが入っているのか
調べてみれば原因がわかると思います。
    • good
    • 0
この回答へのお礼

OSはWindowsXpです。

OSによってできないとの事ですがWindowsなのに出来なかったのは不思議です。。。
ありがとうございました。

お礼日時:2007/06/06 20:01

★回答者 No.3 です。


・改行について補足します。
 Windows系は『\r\n』
 Unix系は『\n』
 Mac OSは『\r』
 がそれぞれ改行コードになります。
・『\n』、『\r\n』で上手く改行できない=Mac OS ですか?
 もしも、Mac OS ならば『\r』のキャリッジ・リターンのコードが改行になります。
・以上。おわり。→ちなみに OS は何でしたか?
    • good
    • 0
この回答へのお礼

ちなみにWindowsXpでした。

ありがとうございました。

お礼日時:2007/06/06 20:03

★アドバイス


・一般に Windows OS では \r\n の2文字です。
 下の C# の参考リンクを貼っておきます。
 http://dobon.net/vb/dotnet/string/controlchars.h …→『改行、タブ文字などの定数』
 http://dobon.net/vb/dotnet/string/newline.html→『文字列の途中で改行する』
 http://jeanne.wankuma.com/tips/string/constant.h …→『改行コードなどの定数を使用する』
・以上。今後の参考に!

参考URL:http://www.atmarkit.co.jp/fdotnet/csharp_abc2/in …
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
\r\nも試したんですがダメだったんですよね。
ネットでも結構探したんでこちらのURLも見てました^^

今までコード書いてる際\nでも使えてたので
テキストボックス内だけが何故か使えなかったので疑問に思いました。

難しいですね。。。

お礼日時:2007/05/24 21:05

Windowsですから


「¥n」(lf)ではなく「¥r¥n」(cr+lf)では?

C#でtextBox1.Text += "\r\n";
で改行できましたよ。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
\r\nでも試したんですがダメだったんですよ。

環境の違いみたいなんですが。。。

すべてに対応しているEnvironment.NewLineで使っていきます。

お礼日時:2007/05/24 20:59

もともとWindowsの改行コードって\nじゃないですからね。



\r\nでもだめでした?
    • good
    • 0
この回答へのお礼

ありがとうございます。
\r\nでもダメだったんです。
使う物により無理な場合があるようですね・・

お礼日時:2007/05/24 20:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています