免费国产网站_秋霞午夜一区二区三区视频_99热在线看_日韩精品久久一区二区_午夜看一级毛片_天天鲁在视频在线观看

  • unity3d讀寫EXCEL文件的方法

    2019/11/12??????點(diǎn)擊:

    對 Excel 表的操作少不了要引入第三方庫,首先我們需要引入 Excel.dll 和 ICSharpCode.SharpZipLib.dll,這兩個(gè)類庫在網(wǎng)上都能找到;然后我們還需要引入 System.Data.dll,這個(gè)類庫在 Unity3D 的安裝路徑下的 Editor\Data\Mono\lib\mono\unity 文件夾下能找到。wiseglove數(shù)據(jù)手套客戶,可以在我們提供的數(shù)據(jù)手套FOR UNITY3D演示項(xiàng)目下找到。

    using Excel;
    using System.Data;
    using System.IO;
    using UnityEngine;
    public class Test : MonoBehaviour 
    {
        #region -- 變量定義
        #endregion
        #region -- 系統(tǒng)函數(shù)
        private void Start()
        {
            DataRowCollection _dataRowCollection = ReadExcel(Application.streamingAssetsPath + "/手套錄制數(shù)據(jù).xlsx");
            //這里從 1 開始循環(huán),因?yàn)榈谝恍斜槐眍^占據(jù)了。所以具體解析數(shù)據(jù)的時(shí)候需要根據(jù)具體情況來定。
            for (int i = 1; i < _dataRowCollection.Count; i++)
            {
                Debug.Log("拇指" + _dataRowCollection[i][0] + "--" + "食指" + _dataRowCollection[i][1] + "--" + "中指" + _dataRowCollection[i][2])+ "--" + "無名指" + _dataRowCollection[i][2])+ "--" + "小指" + _dataRowCollection[i][2]);
            } }
        #endregion
    
        #region -- 自定義函數(shù)
        ////// 讀取 Excel 表并返回一個(gè) DataRowCollection 對象
        //////手套錄制數(shù)據(jù)的Excel 表路徑///讀取的 Sheet 索引。Excel 表中是有多個(gè) Sheet 的///private static DataRowCollection ReadExcel(string _path, int _sheetIndex = 0)
        {
            FileStream stream = File.Open(_path, FileMode.Open, FileAccess.Read, FileShare.Read);
            //IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);//讀取 Excel 1997-2003版本
            IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);//讀取 2007及以后的版本
            DataSet result = excelReader.AsDataSet();
            return result.Tables[_sheetIndex].Rows;
        }
        ////// 讀取 Excel 表并返回一個(gè) DataRowCollection 對象
        //////Excel 表路徑///讀取的 Sheet 名稱。Excel 表中是有多個(gè) Sheet 的///private static DataRowCollection ReadExcel(string _path, string _sheetName)
        {
            FileStream stream = File.Open(_path, FileMode.Open, FileAccess.Read, FileShare.Read);
            //IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);//讀取 Excel 1997-2003版本
            IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);//讀取 2007及以后的版本
            DataSet result = excelReader.AsDataSet();
            return result.Tables[_sheetName].Rows;
        }
        #endregion
    }

    這里需要注意的是,根據(jù) Excel 表的版本不同,使用的方法也不一致,我在代碼中也有注釋,大家看一下就行。還有就是 Sheet ,在讀取的時(shí)候,我們可以根據(jù)索引去讀取,也可以根據(jù)名稱去讀取,我也寫了重載方法。
     如果這樣寫,發(fā)布后運(yùn)行,也許會(huì)報(bào)錯(cuò),這時(shí)我們就又需要引入第三方庫了,去 Unity3D 安裝路徑下的Editor\Data\Mono\lib\mono\unity,找到所有 I18N 開頭的類庫導(dǎo)入U(xiǎn)nity中,就不會(huì)報(bào)錯(cuò)了。

    OK, 現(xiàn)在Excel 表的讀取功能解決了,那我們?nèi)绾紊梢粡?Excel 表,并寫入數(shù)據(jù)呢?這時(shí)我們需要導(dǎo)入一個(gè)叫 EPPlus.dll 的類庫,網(wǎng)上也有,大家可以自己下載。
    代碼如下:

    private void Start()
        {
            string _filePath = Application.streamingAssetsPath + "/錄制數(shù)據(jù).xlsx";
            string _sheetName = "詳情";
    
            FileInfo _excelName = new FileInfo(_filePath);
            if (_excelName.Exists)
            {
                //刪除舊文件,并創(chuàng)建一個(gè)新的 excel 文件。
                _excelName.Delete();
                _excelName = new FileInfo(_filePath);
            }
    
            //通過ExcelPackage打開文件
            using (ExcelPackage package = new ExcelPackage(_excelName))
            {
                //在 excel 空文件添加新 sheet,并設(shè)置名稱。
                ExcelWorksheet worksheet = package.Workbook.Worksheets.Add(_sheetName);
                //添加列名
                worksheet.Cells[1, 1].Value = "時(shí)間";
                worksheet.Cells[1, 2].Value = "拇指";
                worksheet.Cells[1, 3].Value = "中指";
                worksheet.Cells[1, 4].Value = "無名指";
                worksheet.Cells[1, 5].Value = "小指";
                //添加一行數(shù)據(jù)
                worksheet.Cells[2, 1].Value = 10; //ms
                worksheet.Cells[2, 2].Value = 33.0f;
                worksheet.Cells[2, 3].Value = 34.0f;
                worksheet.Cells[2, 4].Value = 35.0f;
                worksheet.Cells[2, 5].Value = 36.0f;
                //添加一行數(shù)據(jù)
                worksheet.Cells[3, 1].Value = 20; //ms
                worksheet.Cells[3, 2].Value = 33.0f;
                worksheet.Cells[3, 3].Value = 34.0f;
                worksheet.Cells[3, 4].Value = 35.0f;
                worksheet.Cells[3, 5].Value = 36.0f;
                //添加一行數(shù)據(jù)
                worksheet.Cells[4, 1].Value = 30; //ms
                worksheet.Cells[4, 2].Value = 33.0f;
                worksheet.Cells[4, 3].Value = 34.0f;
                worksheet.Cells[4, 4].Value = 35.0f;
                worksheet.Cells[4, 5].Value = 36.0f;
                //保存excel
                package.Save();
            }
        }

    Excel 表的讀寫操作大致就是這樣的。因?yàn)?Excel 表 包含太多的格式信息,好是將 Excel 表另存為純文本的 CSV 文件再去讀取,我們另一篇技術(shù)文章討論關(guān)于 CSV 文件的讀取。

    主站蜘蛛池模板: 国产国产人免费人成免费视频_91欧美在线_大陆老熟女嗷嗷叫AV在线_中国美女牲交视频_国产免费成人_av在线短片 | 国产九色在线播放九色_精品亚洲A∨无码一区二区三区_亚洲九九爱_国产精品亚洲第一区焦香味_日本精品久久久久久_国产成人人综合亚洲欧美丁香花 | japanese中国丰满少妇_素人视频aaa_91干b_91日韩欧美_第一版主01bz_亚洲青涩 aaa黄色片_中文字幕日韩亚洲_黄色操比片_欧美国产中文动漫日韩欧美在线_中文字幕综合一区_福利在线免费视频 | 男人扒女人添高潮视频_免费一二二区视频_最新久久免费视频_国产自拍在线_日本中文在线播放_久久精品视频8 | 未满十八勿入AV网免费_亚洲精品视频专区_www.狠狠爱_欧美日韩国产一区二区三区地区_ofozy99国产_久久中文精品 | 九九热综合_亚洲综合精品成人_欧美a在线视频_国产性色AV内射白浆肛交后入_日皮免费视频_亚洲国产欧美另类 | 蜜桃视频一区二区三区在线观看_CHINESE青年大学生GAY18_美日韩成人_国产精品日韩欧美一区二区三区_久久综合五月丁香六月丁香_黄色片子一级 | 国产乱子伦农村xxxx_五码亚洲_日韩精品无码人成视频_俺也去一区二区_在线观看亚洲网站_高清色视频在线观看 | 国产V在线在线观看视频_色综合久久中文字幕有码_人妻无码久久精品人妻_91在线伊人观看视频_国产美女A做受大片观看_欧美成人不卡 一级视频网_92少妇精品免费视频_精彩久久_四虎影院中文字幕_久久久久成人免费视频_美女网站久久 | 少妇做爰高潮呻吟A片免费_亚洲精品久久久久久首妖_国产日产精品一区二区三区四区功能_小明看看免费平台永久_国产精品毛片久久_色久综合网 | 国产一品道av在线一二三区_麻豆精品免费观看_日本黄色特级片_2021年最新最全婷婷丁香_日本一区二区视频_国产av明星换脸精品网站 | 天天干天天色天天干_中文字幕亚洲成人_超碰在线中文_亚洲综合另类小说色六月_国产成人av三级在线观看_免费a级片视频 | 九色视频网址_欧美寡妇XXXX黑人猛交_中文产幕区在线观看_久久av综合网_欧美成人精品一区二区三区在线看_a一级片 | 2020国自产拍精品露脸快速_亚洲日韩国产欧美一区二区三区_99精品久久久久久久_久久春色_亚洲精品一二区_国产成人精品免高潮在线观看 | 久草久草久草久草_亚洲日韩国产一本视频_蜜桃一级网站._中文字幕av一区二区三区佐山爱_成A∨人片在线观看无码_美女在线一区二区 欧美日韩亚洲国产_久久99精品久久久久婷婷暖91_av青青_国产精品看高国产精品不卡_国产青青在线视频_亚洲av永久无码天堂网 | 久久婷婷网站_www日韩在线观看_国产一级aa大片毛片_国产女人爽到高潮的免费视频_国产精品一区二区麻豆_日本高清一二三 | 91av在线免费_日韩三区视频_久久丫精品_视频一区视频二区欧美_久久免费看片_永久免费观看午夜成人网站 | 久久国产精品久久w女人spa_国产91影视_国产精品亚洲第一区在线观看_女学生的沙龙室3中文字幕_a精品视频_亚洲精品伊人久久 | 日日干夜夜干_樱桃成人精品视频在线播放_免费视频二区三区_韩国国内大量揄拍精品视频_韩国一级片免费在线观看_国产精品久久久久久久密密 | 久久国产毛片av_小太正白袜飞机gv免费网址_亚洲免费三区_99久精品视频在线观看视频_一级毛片在线视频免费观看_国产精品成人AV在线观看春天 | 一区二区蜜桃_亚州免费A片无码区A片_一级毛片视屏_亚洲AV永久无码精品一区二区国产_亚洲成a∧人片在线播放_欧美精品手机在线 | 国产欧美日韩一级二级三级_日本高清视频www在线观看_日韩少妇内射免费播放_亚洲AV无码不卡一区二区三区_免费成人小视频_波多野结衣亚洲AV无码无在线观看 | www.日韩精品_欧美超大胆裸体XX视频_ā片在线观看_国产区第一页_紧缚奴在线一区二区三区_老太奶性BBwBBWBBw | 亚洲资源在线观看_成人国产片_亚洲毛片在线免费观看_国产精品久久久久精囗交_国产偷自视频区视频_欧美亚洲人成网站 | 黑人一区二区三区四区五区_www.久久久久_无码aⅴ精品一区二区三区_伊人久久综合成人网_国产最新在线_手机看片日韩人妻少妇 | 熟女自慰30p_久草精品视频_经典av在线播放_亚洲精品久久久久久国产精华液_亚洲色图综合在线_福利cosplayh裸体の福利 | 深夜免费视频_理论片高清免费理论片猫眼_a级片一区二区三区_真实国产乱子伦对白视频_久久av秘一区二区三区_国产日韩欧美色 | 名器高h禁伦桌上肉伦h_精品国免费一区二区三区_欧美性猛交xxxx乱大交极品_精品在线视频免费观看_他扒开我小泬添我视频_国产色XX群视频射精 | 国产视频久久久久_99在线免费_亚洲成人精品_无码精品第1页_成人va视频_国产精品偷伦费观看一次 | 欧美日韩成人在线观看_被拉到野外强要好爽流水_久草在线观看视频免费_亚洲性线免费观看视频成熟_午夜免费国产体验区免费的_亚洲欧美国产精品无码中文字 | 97操操_成人中文字幕在线_成全我在线观看免费观看_欧美成人V片观看_a成人在线_黄色片久久久 | 亚洲国产成人资源在线软件_草女人视频_亚洲一区AV无码专区在线观看_三级在线观看_色偷偷国色天香在线观看免费视频_久久国语视频对白 | 人妻少妇被猛烈进入中文字幕_亚洲色偷偷综合亚洲av78_久久99久久99久久_粉嫩av一区_美女一区二区视频_久久网这里都是精品 | 精品视频成人_免费一级黄色片_欧美一区二区在线_精品无码国产自产拍在线观看_性欧美videofree另类_亚洲一区精品人人爽人人躁 | 国产日韩在线观看一区_最新的国产成人精品2021_国产高清视频在线观看_伊人久久一区二区三区小说_影音先锋在线资源中文字幕_果冻传媒精选一区二区 | 午夜视频精品_日本黄色免费观看_男女无遮挡在线_日韩精品网站_超碰这里只有精品_国产成人精品a视频一区 | 免费a级_亚洲一区二区在_日本成人一区_久草视频福利_成人无码WWW在线看免费_国产一区二区三区四区五区密私 | 人操人爽_看亚洲一级毛片_国产精品无码素人福利_亚洲av永久无码老湿机_xxxx久久_麻豆文化传媒精品一区观看 | 亚洲精品55夜色66夜色_youjizz亚洲_久草加勒比_久久久三级视频_玩两个丰满老熟女久久网_午夜影视一区二区 | 精品国产一区二区三区久久久蜜月_一本大道大臿蕉香蕉网站_www.youjizz.com在线_久久综合给久久狠狠97色_国产亚洲一区二区三区_国色天香精品一卡2卡3卡4 | 草草浮力院禁止18进入_亚洲视色_大陆国产vs国产对白_色网站免费在线_九色视频在线观看_奇米视频888战线精品播放 |