Kuix #inc 的用法

今天有朋友问了我一个Kuix中用#inc的乱码问题我才第一次了解有这个关键字,用法很简单

    <?xml version="1.0" encoding="UTF-8"?> 
     <screen title="天外飞仙"> 
      <textarea style="padding: 0 5 0 5; align: left;"> 
        <_text> 
            #inc(/xml/test.txt) 
        </_text> 
      </textarea> 
    </screen> 

其中test包含了中文,我测试了一下,UTF-8编码保存的确实有乱码,于是保存为GBK码(如果列表没有GBK则自己输入),测试通过,看了一下源码,其实是作者偷懒,很多外国的开源软件其实都存在这样的问题(Kuix,918行)

byte[] rawData = new byte[inputStream.available()];
inputStream.read(rawData);
characters = new String(rawData);

 

实际上是用系统默认的编码解码,中文系统是GBK,如果要保证不出问题就要修改源码了,因为文本文件无法预知其编码,所以只能扩展#inc语句增加编码属性,具体请参照Kuix.loadScreen

你可能感兴趣的:(xml,软件测试)