【Unity】 文字列に含まれている改行が反映されない時の対処法

Text
スポンサーリンク

解決策

public string UnescapeText(string text)
{
    text = Regex.Unescape(text)
}

Regex.Unescape()を使うことで回避できる。

解説

asset ファイルに含まれている文字列がUnicodeエスケープシーケンス(例: '\u30B9‘)として保存されている場合、”\n”などの特殊文字が通常通りに解釈されなくなることがある。

そのため、Regex.Unescape()を使って文字リテラルのエスケープシーケンスをアンエスケープすることで 改行 や タブ などの特殊文字も反映されるようになる。

ScriptableObject から読み込んだ文字列をTextに表示させようとしたときなどに起こったりする。

TextTips
スポンサーリンク
フーシャ

主にUnityを触ってるクライアントエンジニア。
学部の情報工学科卒業後、
スマホ向けゲームの開発/運営会社に新卒で入社して現在5年目の社会人です。

フーシャをフォローする
フーシャをフォローする

コメント

タイトルとURLをコピーしました