首页 > 其他分享 >Android +本地文件写入读取解析(传感器ID)

Android +本地文件写入读取解析(传感器ID)

时间:2024-09-11 13:48:02浏览次数:10  
标签:LogError 读取 str1 Debug str var path Android ID

代码:

 /// <summary>
 /// 传感器ID
 /// </summary>
  public Dictionary<string, string> SensorIDDic = new Dictionary<string, string>();
  public string contents= "pen,241007|bookL,240806|bookR,241000";
        /// <summary>
        /// 获取传感器ID
        /// </summary>
        void GetSensorData()
        {
#if UNITY_EDITOR
            string path = Application.persistentDataPath + "/SensorConfig.txt";
#elif UNITY_ANDROID
            string path = "/storage/emulated/0/SensorConfig.txt";
#endif
            if (!File.Exists(path))
            {
                //文本不存在创建文本
                FileStream fileStream = new FileStream(path, FileMode.OpenOrCreate);
                StreamWriter sw = new StreamWriter(fileStream, Encoding.UTF8);
                foreach (var item in contents.Split("|"))
                {
                    sw.WriteLine(item);
                }
                
                sw.Close();
                fileStream.Close();
                OnGetFileContent(path);
            }
            else
            {
                OnGetFileContent(path);
            }
        }
        /// <summary>
        /// 读取文件内容
        /// </summary>
        /// <param name="path"></param>
        private void OnGetFileContent(string path)
        {
            //文件流形式读取文档
            using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read))
            {
                byte[] bytes = new byte[fs.Length];
                fs.Read(bytes, 0, bytes.Length);
                fs.Close();
                string str = Encoding.UTF8.GetString(bytes);
                str = str.TrimEnd((char[])"\r\n".ToCharArray());
                //str = Regex.Replace(str, str.TrimEnd((char[])"\r\n".ToCharArray()), "");
                //Debug.LogError("str::" + str);
                if (str != "" && str != null)
                {
                    //var tempStr = str.Split(",");
                    //foreach (var item in tempStr)
                    //{
                    //    SensorIDlist.Add(item);
                    //}
                    //foreach (var iem in SensorIDlist)
                    //{
                    //    Debug.LogError("SensorIDlist:" + iem);
                    //}

                    var str1 = str.Split("\r\n");
                    Debug.LogError("TEST:" + str1[0]);
                    //foreach (var item1 in str1)
                    {
                        Debug.LogError("str1.Length:" + str1.Length);
                        for (int i = 0; i < str1.Length; i++)
                        {
                            var ie = str1[i].Split(",");

                            Debug.LogError("item2[0]:" + i + ":" + ie[0] + "  item2[1]:" + ie[1]);
                            SensorIDDic.Add(ie[0], ie[1]);

                        }

                    }
                    //foreach (var item in SensorIDDic.Keys)
                    //{
                    //    Debug.LogError(item);
                    //}

                }

            }
        }


void Test()
{

    if (sn.Contains(AppStart.Instance.SensorIDDic["pen"]))
    {
      Debug.LogError("sn:" + sn+ " SensorIDDic[\"pen\"]" + AppStart.Instance.SensorIDDic["pen"]);

    }

}

 

标签:LogError,读取,str1,Debug,str,var,path,Android,ID
From: https://www.cnblogs.com/WalkingSnail/p/18408099

相关文章

  • 实现keras.textvectorization自由tf-idf篇
    本篇,带你简略了解如何使用keras.textvectorization来处理词袋模型(tfidf)计算1、替换:如果发现以下内容实现存在障碍,请替换方法:适用sklearn来计算tf-idf,sklearn里也有包装比较好的各类如tfidfVectorize等模块方法,通过fit-transform来实现2、keras.textvectorization的区别及优......
  • [1060] Create the unique ID from the index (DataFrame, GeoDataFrame)
    Thereareseveralwaystoimplementit!Hereisasampledataset:importpandasaspd#SampleDataFramedf=pd.DataFrame({'A':[1,2,3,4],'B':[None,5,None,7]})1.pd.Series()#ConverttheindextoaSerieslikeac......
  • 12Midjourney从零到商用·进阶篇:提示词的书写方式与技巧
    在这篇文章中,我们将深入研究使用提示的艺术,探索各种技术,以创建个性化和迷人的图像,将你的创意想法转变为令人惊叹的视觉杰作。一、提示词结构一个基本的提示词可以简单到一个单词或短语。更高级的提示可以包括一个或多个图像链接,多个文本短语,以及一个或多个参数。二、......
  • 震惊!!一男子用尽了各种方式都搜不到这个资源,于是他竟然将手伸向了......!?pyqt pyside
    震惊!!一男子用尽了各种方式都搜不到这个资源,于是他竟然将手伸向了......!?pyqtpyside随窗口自适应、可缩放、拖动QLabel需求场景实现功能和使用1.参数设置2.设置图片3.缩放4.拖动5.小惊喜(裁剪图片)完整使用案例1.使用QtDesigner设计一个简单界面2.引用制......
  • python读取Excel表格内容
    importpandasaspdio=r'C:\Users\lijj1\Downloads\OSS.xlsx'#绝对路径。PS:跟当前脚本在同一目录下用相对路径,否则用绝对路径。data=pd.read_excel(io,sheet_name='工作表1')#指定读取第一个sheetprint(data.head(2))#读取前2行column_data=data.loc[:,'对应域......
  • 【高级编程】Java IO流(下)字符流 Reader Writer 字节流读取二进制文件
    文章目录ReaderFileReaderBufferedReaderWriterFileWriterBufferedWriter读写二进制文件ReaderReader是一个抽象类,用于读取字符流。它是所有字符输入流的基类。Reader提供了一些基本的方法来读取字符数据intread()//读取单个字符,并返回一个整数。如果到达流......
  • 记一次Fidder Script自动修改包
    FiddlerScript的本质是用JScript.NET编写的一个脚本文件CustomRules.js但是它的语法很像C#但又有些不一样,比如不能使用@符号通过修改CustomRules.js可以灵活修改请求报文和响应报文,也无需中断程序。同时也可以利用它针对不同的URL做各种特殊处理。Fiddler安装时已经自带了Fidd......
  • LEAN 类型系统属性 之 定义上相等的非确定性(Undecidability of Definitional Equality
        由于定义上相等(DefinitionalEquality)作用在所有情况,由此,当遇到不一致(Inconsistent)的时候,会导致其结果是不确定的,即会无限展开(unfoldingforever)下去。    原文中,是通过一个定义在自然数(ℕ)的大于关系(>)上的可达类型(AccessibilityType)来论证,这个看原文很好......
  • 基于tf-idf的论文查重
    基于tf-idf的论文查重github地址:https://github.com/gomevie/gomevie/tree/main这个作业属于哪个课程广工计院计科34班软工这个作业要求在哪里作业要求这个作业的目标设计并实现一个论文查重算法,通过比较原文和抄袭版论文文件,计算并输出重复率。PSP表格......
  • 【教程】如何使用 MYScrcpy,一行Python代码获取Android设备 屏幕/摄像头 H264/H265 原
    MYScrcpy1.5.8Github/Gitee1.5.8版本新增获取原始视频流(H264/H265)方法,供小伙伴们在需要原生H264/H265串流时使用要求MYScrcpy>1.5.8pipinstall-Umysc安卓设备开启调试模式,安卓版本>5(摄像头需>11)H265需安卓设备支持H265编码步骤MYScrcpy从设计之初......