質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

6046閲覧

CSVから読み込んだ文字列を、Textに表示したとき改行(\n)がそのまま表示され改行されないで困っています。

nkazto

総合スコア9

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

1グッド

1クリップ

投稿2020/06/12 08:35

編集2020/06/12 09:07

前提・実現したいこと

Unity C#でゲームを作っています。
CSVからstringを読み込みText.textに表示したとき改行が行われず困っています。

UTF-8にしており、この改行以外の部分は読み込み動作しています。

###使っているテキスト

本文です。\nここで改行したい。

↓↓
こう見えてほしい。

本文です。 ここで改行したい。

しかし改行されずそのまま表示されてしまいます。

本文です。\nここで改行したい。

###補足

以下が類似の質問でしたが、ここでの解決方法は今回は使えないため困っています。
(\nではなくファイル側で改行を行っておく、という内容だと理解しています。違ったらすみません)

https://teratail.com/questions/134632

今回は、csvの1行が1つのデータになっているため、文中では改行を行うことができません。
csvの文字列として指定したいです。

### csv例

0,本文です。\nここで改行したい,777,その他色々なデータが続きます。 1,本文です。\nここで改行したい,777,その他色々なデータが続きます。 2,本文です。\nここで改行したい,777,その他色々なデータが続きます。 3,本文です。\nここで改行したい,777,その他色々なデータが続きます。

### コード

private void LoadCSV() { TextAsset Tx = Resources.Load(DataPath) as TextAsset; StringReader Reader = new StringReader(Tx.text); if (Reader != null) { string Line; while (Reader.Peek() > -1) { Line = Reader.ReadLine(); string[] Splits = Line.Split(','); Text.text += Splits[1]; } } }

すみませんが、どうぞよろしくお願いいたします。

kiriyama👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2020/06/12 08:43

コードを提示しましょう
YAmaGNZ

2020/06/12 08:46

CSVから読み込んだ後にReplaceメソッドで"\n"を改行コードに変換してはどうですか?
nkazto

2020/06/12 08:49

すみません。読み込むコードは関係ないかと思って省略してしまいました。 private void LoadCSV() { TextAsset Tx = Resources.Load(DataPath) as TextAsset; StringReader Reader = new StringReader(Tx.text); if (Reader != null) { string Line; while (Reader.Peek() > -1) { Line = Reader.ReadLine(); string[] Splits = Line.Split(','); Text.text += Splits[1]; } } }
退会済みユーザー

退会済みユーザー

2020/06/12 09:03

そのコードは質問欄を編集して追記するようにしてください。``` と ``` で囲うことを忘れずに。
nkazto

2020/06/12 09:05

すみません。。。
退会済みユーザー

退会済みユーザー

2020/06/12 09:38

YAmaGNZ さんが上のレスで言われたようにはできないのですか?
nkazto

2020/06/13 11:48 編集

すみません。。。 YAmaGNZさんの投稿に気づけていませんでした。 また、今見てもどうReplaceしたらいいかはわからなかったので、 >SurferOnWww >YAmaGNZ さんが上のレスで言われたようにはできないのですか? といわれても、できなかったと思います。。。 初心者なので、もう少し優しいご指摘をいただけるとうれしいです。。つらいです。。。
退会済みユーザー

退会済みユーザー

2020/06/13 11:59

> YAmaGNZさんの投稿に気づけていませんでした。 注意深くレスをチェックして、分からないならその旨フィードバックを返しましょう。そうすれば普通はそれに対して返事が返ってくると思いますよ。なにもフードバックしないのは、無視したのと同じで、感じよくないです。
nkazto

2020/06/13 14:55 編集

すみません。。。もうこれ以上どうしたらいいでしょうか。。。? 許してください。色々不慣れですし、未熟です。 すみません。 でも、さすがにここまで攻め続けられると辛いです。 気づけなかったことは申し訳なかったと思いますし、謝っています。 2020/06/12 17:46に頂いたコメントについてですが 私はその時間、 y_waiwai2020/06/12 17:43 こちらに答えるため、ソースコードを記述するためのレスを書いていて通知が来ていません。 そのレスは、2020/06/12 17:49に投稿しました。 6分間の出来事です。 その間に投稿があったものを見逃すだけで、こんなにも非難されなければいけないのでしょうか? 落ち度は認めています。 YAmaGNZさんには感謝もしています。 そのうえで、 あなた(SurferOnWww)が「できないのですか?」と聞いたので、 私の技術ではできなかった旨を答えました。 できなかったからレスしていないわけではありません。 先述のとおり気づいていなかったのです。それは申し訳ないです。 そのうえで(SurferOnWww)「できないのですか?」というので、 「私のスキルできなかったと思う」と答えました。
退会済みユーザー

退会済みユーザー

2020/06/13 15:27

> もうこれ以上どうしたらいいでしょうか。。。? 次回質問する機会があったら、その際は今回のような「YAmaGNZさんの投稿に気づけていませんでした」ということがないように、注意深くレスをチェックしてフィードバックを返してもらうということ以上は期待してません。
nkazto

2020/06/18 07:27 編集

>フィードバックを返してもらうということ以上は期待してません。 レスが遅れたのは私の落ち度です。 その件は謝っています。 いつまで粘着して、初心者をいびって楽しむのでしょうか? そもそも貴方はなんなのでしょうか? 何もアドバイスもせず初心者をいじめて楽しいのでしょうか? 貴方だけでいうなら、貴方が私に文句をいった時間より、 貴方のレスが遅れていることもありますよね? 無視ですか? 「気分が悪いです」って貴方いってましたね。 何がしたいのでしょうか? 確定で叩ける相手を見つけて楽しんでいるだけの粘着ですよね? あなたに迷惑をかけましたでしょうか。。。? YAmaGNZさんの立場を勝手に使って、 こんなに性格悪く粘着して、いやがらせして、何が楽しいですか?
nkazto

2020/06/18 07:38 編集

6分投稿に気づけなかったことを、もっと気づいてFBしろということで、 それ以上何も期待していません、ということですね。 かなり厳しいかつ、ただの粘着になっていませんか? SurferOnWww様の期待がないと、このサービス使うと、これほど粘着いやがらせされてしまうのでしょうか?
guest

回答1

0

ベストアンサー

これでいけたりします?

Cs

1 private void LoadCSV() { 2 TextAsset Tx = Resources.Load(DataPath) as TextAsset; 3 StringReader Reader = new StringReader(Tx.text); 4 5 if (Reader != null) { 6 string Line; 7 while (Reader.Peek() > -1) { 8 Line = Reader.ReadLine(); 9 string[] Splits = Line.Split(','); 10 11 Text.text += Splits[1].Replace("\n", "\n"); 12 } 13 } 14 }

投稿2020/06/12 09:32

hogefugapiyo

総合スコア3302

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nkazto

2020/06/12 09:35

ありがとうございます。 無事改行され、想定通りの表記になりました。 助かりました。 皆様、色々失礼しました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問