- ベストアンサー
TEXTAREAからのデータを改行入りで表示する方法
- Tomcat+PostgreSQL+JavaでDBから持ってきたデータを一度TEXTAREAに代入し、修正したデータを次の画面で表示するプログラムを組んでいます。しかし、TEXTAREAで入力したデータが次の画面で改行されずに表示されてしまいます。Web画面上でもうまく改行するにはどうすればいいでしょうか。
- Tomcat+PostgreSQL+Javaを使用して、DBから取得したデータをTEXTAREAに代入し、修正後のデータを次の画面で表示するプログラムを作成しています。しかし、TEXTAREAで入力したデータが改行されずに表示されてしまいます。Web画面上でも改行するにはどうすればいいでしょうか。
- DBから取得したデータをTEXTAREAに代入し、修正したデータを次の画面で表示するプログラムを作成しています。しかし、TEXTAREAで入力したデータが改行されずに表示されてしまいます。Web画面上でもうまく改行するにはどうすればいいでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
申し訳有りません。自己レスです >もしWindowsならばcrlfなので\r\nとなります。 >ですので\rのみ変換しても改行されてしまうと思われますがどうでしょう?? >replaceはchar単位での変換なのでindexOf等を使い変換ロジックを組んで >見ればどうでしょうか?? replaceで変換されているのは\nでしたね。申し訳ありません。 ですが、replaceではchar単位での変換となるので、"<br>"という 文字列は変換できません。やはりindexOfを使うしかないと思います。
その他の回答 (2)
- covachan
- ベストアンサー率38% (46/120)
>ちなみに「\n」を<BR>とReplaceするという方法はだめでした・・・ 結論から言うとurizakaさんのコーディングにミスが有るのでしょう。 >かわりにちゃんとTomcat上では改行されて表示されています Tomcatとはいったい何をさすのかわかりませんが、JAVAのコンソールで 改行されているのであれば間違いなく改行文字は含まれているはずです。 それとOSはなんでしょうか??もしWindowsならばcrlfなので\r\nとなります。 ですので\rのみ変換しても改行されてしまうと思われますがどうでしょう?? replaceはchar単位での変換なのでindexOf等を使い変換ロジックを組んで見ればどうでしょうか?? それと、余談なのですが、変数名にContents等のように頭一文字にに大文字 を使用するのは好まれません。これは他の言語でも共通の一般認識です。 一度よく他の方のコーディングや、言語仕様書などによく目を通されてみると いいと思います。
- FlossenEngel
- ベストアンサー率77% (132/170)
改行は<br>です。
補足
説明が悪かったようです。 確かにHTMLで改行するのは<BR>で、せめてTEXTAREAからString変数に入れた 値に改行することを示す「\n」とでも入っていればreplaceメソッドを使って <BR> と変更するのですが、Tomcatで見る限り、そのような表示もされて いません(かわりにちゃんとTomcat上では改行されて表示されています)。 これは、表示こそされていないけれども、実際には何か改行コードが入って いるのでしょうか?。もしそうだとしたら、どのような値が入っている のでしょうか? ちなみに「\n」を<BR>とReplaceするという方法はだめでした・・・ よろしくお願いします。
お礼
urizakaです 解決しました。 convachanさんの言うとおりreplaceメソッドで必死にやろうとしたことが 原因のようです。 で、実はreplaceAllという便利なメソッドがありまして、 Content = Content.replaceAll("\n","<BR>"); これで解決しました。 変数の命名の件はしりませんでした、ちょっと勉強して以後のプログラミング で役立てたいと思います。 それでは。