unity中的TXT存储与读取

来源:互联网 发布:windows 8.1专业版激活 编辑:程序博客网 时间:2024/05/17 08:17
这个代码的用处就是存储的东西不多,用不到数据库甚至于Xml和json,用一个txt文档存储就可以了。
把文档的内容用数据流的方式读取和写入,用之前请先引入System.IO和System.Text 两个命名空间,在我看来比较方便,再小一点的数据存储就用Unity自带的PlayerPrefs类存储吧,但是手机端清楚缓存后就没有了,请注意。

写入TXT
        //第一步访问Txt文件
       stringpath =Application.dataPath +"/Map/Map1.txt";
        //文件流
       FileStreamfs =File.OpenWrite(path);   
       //第二步填充内容
       StringBuildersb =newStringBuilder();
       for(inti = 0; i < 35; i++)
        {
           for(intj = 0; j < 35; j++)
            {
                sb.Append(Random.Range(0, 3));
            }
            sb.AppendLine();
        }
         //Using system.Text
       byte[] map =Encoding.UTF8.GetBytes(sb.ToString());           
        fs.Write(map, 0, map.Length);
        fs.Close();
        fs.Dispose();

读取TXT
 stringpath =Application.dataPath +"/Map/Map1.txt";
       //文件读写流
       StreamReadersr =newStreamReader(path);
       //读取内容
       stringresult = sr.ReadToEnd();
       //逐行截取(这样截取的数据可能会有问题,如多一行或对一个空格,需要调整)
        // 可以自行百度方法解决,也可以按实际手动修改
       string[] data = result.Split('\n');
       byte[,] mapData =newbyte[35, 35];
       for(inti = 0; i < 35; i++)
        {
           for(intj = 0; j < 35; j++)
            {
                mapData[i, j] =byte.Parse(data[i][j].ToString());
            }
        }
       returnmapData;
0 0
原创粉丝点击