Unity3d读取CSV中的文本到Rich Text中换行符不识别的问题

项目中要用到符文本做一些信息显示,需要有颜色、字体样式、换行之类,Unity的 Rich Text就可以用来做这类需求。

关于Rich Text 的使用:

http://docs.unity3d.com/Manual/StyledText.html

虽然里面没有提到 " \n " 这个换行符,但是其实是支持的。

文章转自http://blog.csdn.net/huutu http://www.thisisgame.com.cn

今天在读取CSV中的内容到 Rich Text中显示的时候遇到了麻烦。

Unity3d读取CSV中的文本到Rich Text中换行符不识别的问题_第1张图片


上图是 CSV 中的内容,读取之后直接 赋值给 Text。但是运行之后却并没有换行。


原样显示出来了,难道是 Rich Text 不支持 " \n " 换行吗?


把CSV中的内容直接在代码中写死,赋值给 Text 。

发现是OK的。

文章转自http://blog.csdn.net/huutu http://www.thisisgame.com.cn

怀疑是CSV的问题。于是断点查看 代码读取出来的内容,果然发现问题:


从 CSV 中读取出来内容后,原来的 " \n " 变成了 " \\n " 。

个人觉得是Excel中,为了把 " \n " 作为 正常的字符处理而又加上了 " \ " 来标记后面的是正常的字符内容。


既然知道原因,那解决起来也方便。只要把 " \\n " 替换成 " \n "就可以了。

m_MainNoticeText.text = noticeinfo.Title.Replace("\\n", "\n");

文章转自http://blog.csdn.net/huutu http://www.thisisgame.com.cn

你可能感兴趣的:(Unity)