[Unity][Android][LUA][IOS]读取写入txt文件


接着上一篇继续

[Unity][LUA][SLUA]选择LUA库导入Unity中


创建 txt 文件,来保存文件内容。读取和写入。

从test文件 中读取内容,并创建 新的 文件test1.txt,替换 test1.txt 的某些内容。

[Unity][Android][LUA][IOS]读取写入txt文件_第1张图片

显示结果

[Unity][Android][LUA][IOS]读取写入txt文件_第2张图片


test1文件(test1.txt文件内容如果 不清空,就会 在原有文件中继续 写入 内容,根据情况,自行判断。)

[Unity][Android][LUA][IOS]读取写入txt文件_第3张图片[Unity][Android][LUA][IOS]读取写入txt文件_第4张图片



using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using SLua;
using System.IO;

public class Test : MonoBehaviour {

    public TextAsset TxtFile;   //建立TextAsset
    private string Mytxt;       //用来存放文本内容
    
    LuaSvr l;

    private string m_sFileName = "test1.txt"; // 文件名

    // Use this for initialization
    void Start()
    {
        l = new LuaSvr();
        l.init(null, () =>
        {
            l.start("test");
        });

        string path = "";
        if (Application.platform == RuntimePlatform.Android)
        {
            path = Application.persistentDataPath;
        }
        else if (Application.platform == RuntimePlatform.WindowsPlayer)
        {
            path = Application.dataPath;
        }
        else if (Application.platform == RuntimePlatform.WindowsEditor)
        {
            path = Application.dataPath;
        }

        Mytxt = TxtFile.text;
        print(Mytxt);           //输出验证
        //找到文件 替换 某些内容
        string text = Mytxt.Replace("Hello","Well Done!123");
        CreateOrOPenFile(path, m_sFileName, text);
    }
    void CreateOrOPenFile(string path, string name, string info)
    {          //路径、文件名、写入内容
        FileInfo fi = new FileInfo(path + "//" + name);
        StreamWriter sw ;
       // StreamWriter sw = new StreamWriter(path+ name, false);

        //File.Create(path + name);

        //sw.WriteLine("");

        print("      create");

        //删除文件,重写文件的内容
        fi.Delete();
        if (!fi.Exists)
        {
            //File.Create(path+name);
            //创建文件
            sw = fi.CreateText();
        }
        else
        {
            sw = fi.AppendText();
        }
        //在 文件原有内容上 ,写入文件
        sw.WriteLine(info);
        sw.Close();
        sw.Dispose();
        
    }
}




//在这里 把 路径 加上 /Slua/Resources/就效果如下所示
        //找到文件 替换 某些内容
        string text = Mytxt.Replace("Hello","Well Done!123");
        CreateOrOPenFile(path+"/Slua/Resources/", m_sFileName, text);

[Unity][Android][LUA][IOS]读取写入txt文件_第5张图片

[Unity][Android][LUA][IOS]读取写入txt文件_第6张图片


参考资料:

1.

Unity3D研究院之IOS Android支持中文与本地文件的读取写入(二十七)

2.

unity文件操作路径

3.

unity3d有什么函数可以把一个字符串里面的一些字替换掉,比如我要把1312453里的3全都替换成4

4.

5.

6.


你可能感兴趣的:(Unity,安卓,LUA)