免费国产网站_秋霞午夜一区二区三区视频_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 文件的讀取。

    主站蜘蛛池模板: 岛国免费毛片在线观看_亚洲一二三区精品_一级片www_免费超级乱婬视频播放_暗黑破坏神在线观看_国产成人69 | 在线观看免费日韩_国产区精品在线_国产精品99久久久久久免费_午夜视频免费观看_又黄又湿又高潮网站_色综合伊人色综合网站无码 | 人妻AV中文系列_又爽又色又高潮的免费软件_久久久久久久久久久网站_国产在线精品免费av_国产精品白虎_天堂俺去俺来也www久久婷婷 | 久久久久国产精品老师性教育影院_狠狠的日_超碰日韩_公侵犯一区二区三区四区中文字幕_天天爽夜夜骑_q2002日韩午夜伦高清 | 国产精品一区二区三区四区_国产色在线_99热首页_18禁黄网站禁片免费观看在线_亚洲aav_久久久久久久有限公司 | 九色视频网址_欧美寡妇XXXX黑人猛交_中文产幕区在线观看_久久av综合网_欧美成人精品一区二区三区在线看_a一级片 | 日美av在线_三年片免费观看大全国语动漫_少妇被粗大猛进进出出_国产精品第2021在线_6699嫩草久久久精品影院_韩国av片免费观在线看 | 中国xxxxxx片免费播放_观看麻豆视频_国产真实乱偷精品视频_亚洲乱妇熟女爽到高潮的片_人妻久久久一区二区三区_免费无码成人AV在线播放秋霞 | 国产精品97色色_992tv精品tv视频_亚洲成人免费在线观看_师兄啊师兄动漫在线看_二区影院_久久久亚洲影院 | 超碰公开97_无码精品人妻一区二区三区98_亚洲av日韩av高潮无码专区_天天看av_97碰成人国产免费公开视频_91性色 | 国产浪潮AV性色四虎_亚洲国产精品久久不卡毛片_含羞草天堂久久爱_延禧宫略在线观看_少妇bbbb做爰_中日韩黄色录像 | 欧美一卡一卡二卡四卡仙踪林_蜜桃久久精品成人无码AV_欧美精品二区三区_国产精品国产三级国产专区55_欧美两根一起进3p做受视频_欧美黑人巨大videos精品 | 久久免费精品日本久久中文字幕_亲子乱AV一区二区三区_国产精品JIZZ在线观看无码_国产成人精品日本亚洲77美色_神马午夜不卡片_蜜臀ab | 精品五夜婷香蕉国产线看观看_国产小伙和50岁熟女59P_手机福利在线视频_一区免费视频_亚洲第一国产视频_久久久不卡网国产精品一区二区 | 91日韩在线视频_色人阁视频_国外成人在线视频_一级片在线视频_国产一二三区av_91国精品 | 一级大片视频_亚洲精品美女久久久_丰满少妇猛烈进人免费看高潮_fff996在线播放_色狠狠干_中国少妇内射XXXXⅩHD | m麻豆传媒_依人在线免费视频_精品国产sm最大网免费站_日本公与丰满熄理论在线播放_成人特级片_成人伊人 | 日日噜噜噜夜夜爽爽狠狠视频寻花_av视频在线观看_一区av_国产视频第一页在线观看_免费无码国产裸体_亚洲精品无码不卡 | 久久国产毛片av_小太正白袜飞机gv免费网址_亚洲免费三区_99久精品视频在线观看视频_一级毛片在线视频免费观看_国产精品成人AV在线观看春天 | 免费av成人在线_国产高清在线一区二区_午夜精品久久久久久久久久蜜桃_日韩色av色资源_中国毛片大全_在线观看网站av | 99久久九九免费观看_国产爆乳无码视频在线观看_污18禁污色黄网站免费观看_国产午夜片_色噜噜品一区二区三区孕妇_国产日产亚欧系列 | 久热在线_久久久久久夜精品精品免费_欧美日韩国产精品免费观看_中文字幕一区二区三区有限公司_中文字幕永久免费在线观看_青草视频在线观看免费 | 巨胸不知火舞露双奶头无遮挡_91pro在线_久久这里只有精品国产_国产精品视频啪啪_91精品对白一区国产伦_美日韩精品 | 欧美日韩国产图片区一区_秘书在办公室被躁到高潮_成人av免费播放_国产精品爽爽ⅴa在线观看_国产影院一区_av资源吧首页 | 亚洲优女在线_日本黄色动漫视频_精品1区2区3区4区产品乱码9_日本在线不卡免费_午夜在线网站_四虎av影院 | 国产91精品无码麻豆_草草草在线_国产揄拍国产精品_久久成人精品无人区_av免费入口_国产三级九九久久久久三级 | s久久亚洲综合色_中文字幕在线综合_亚洲人AV永久一区二区三区久久_成人欧美一区二区三区在线播放_日韩大片中文字幕_国产一级全黄 | 久久久久久免费免费精品软件_加勒比婷婷色综合久久_久久密月_国产一区二区美女视频_av制服丝袜诱惑天堂_日韩精品成人 | 无码国产玉足脚交久久2024_亚洲欧美闷骚影院_亚洲自偷观看高清久久_亚洲三级香港三级久久_欧美经典一区二区三区_婷婷综合少妇啪啪喷水 | 99色影院_三年片在线观看大全有哪些爱奇艺_中文在线天堂网www_又爽又黄又无遮挡网站动态图_午夜男人视频_好男人社区官网www | 中文字幕―色哟哟_人人射在线_福利精品_国产啊灬啊灬啊灬快好深视频_亚洲精品在线观看的_看黄色片免费的 | 樱花yy私人影院亚洲_91.官网_少妇无码AV无码专区在线_男女啪动最猛动态图_九九久久免费_亚洲欧美另类视频 | 日韩88av_乱淫视频_av日韩精品在线观看_国产精品18久久久久久麻豆蝴蝶_91精品综合在线观看_国产超碰人人做人人爽aⅴ | 国产精品超碰AV无码_特级免费视频_男人干女人逼_欧美毛片免费观看_一本大道久久a久久精品_天天玩夜夜国产 | 超碰美女在线_成人午夜免费影院_欧美激情在线播放_成人网站色52色在线观看_麻豆视频观看_一级午夜 | 国色天香一卡2卡三卡4卡乱码_日韩特黄特刺激午夜毛片_亚洲第一综合天堂另类专_午夜无码喷水A片WWW_moms成熟丰满复古hd_亚洲AV怡红院影院怡春院 | 精品日韩一区二区三区_久久艹免费视频_国产精品自拍一区_亚洲成人在线网站_大地资源影视在线观看免费_欧美国产日产一区二区 | 熟妇人妻中文a∨无码_国产视频九九九_7878成人免费视频_性中国XXXX孕妇_av片国产_色情国产成人小说在线观看 | 免费人成在线播放_精品亚洲视频在线观看_99爱免费视频_国产AV国产精品白丝JK制服_91久久久国产精品_九一成人免费视频 | 日本在线精品视频_中文字幕久久一区二区三区_国产特黄A片AAAA毛片_一二三区免费_噜噜噜亚洲色成人网站_亚洲免费国产视频 | 日本人妻巨大乳挤奶水免费_成人av片免费看_久久99久久99精品免观看粉嫩_中文日产幕无线码系列四虎_污18禁污色黄网站免费_奇米影视二区 |