public ActionResult Import(HttpPostedFileBase currencyConversionsFile) { string filename = "CurrencyConversion Upload_" + DateTime.Now.ToString("dd-MM-yyyy") + ".csv"; string folderPath = Server.MapPath("~/Files/"); string filePath = Server.MapPath("~/Files/" + filename); currencyConversionsFile.SaveAs(filePath); string[] csvData = System.IO.File.ReadAllLines(filePath); //the later code isn't show here }
我知道将httppostedfilebase转换为String数组的常用方法,它首先将文件存储在服务器中,然后从服务器读取数据.无论如何直接从httppostedfilebase获取字符串数组而不将文件存储到服务器中?
解决方法
那么你可以像Stream一样逐行读取你的文件:
List<string> csvData = new List<string>(); using (System.IO.StreamReader reader = new System.IO.StreamReader(currencyConversionsFile.InputStream)) { while (!reader.EndOfStream) { csvData.Add(reader.ReadLine()); } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。