[英]Read csv file client side
在上載大文件之前,我必須閱讀csv文件客戶端的前幾行,以向用戶提供預覽。
我在ASP.Net(VS2010)中使用C#
有誰知道該怎么做? 而且它可以在所有瀏覽器中使用!!!
(不可能使用activeX左右,我們不希望客戶端安裝某些東西!)
一個示例代碼會很棒!
提前致謝!
Firefox 3.6+和Chrome(至少是版本6,可能是較舊的版本)支持File API ,該API可讓您從文件輸入中讀取本地文件。
這是一個簡單的示例:
function handleFile(file) {
var reader = new FileReader();
reader.onload = function(e) {
// Here's where you would parse the first few lines of the CSV file
console.log(e.target.result);
};
reader.readAsText(file);
}
在您的html中,您將具有以下內容:
<input type="file" onchange="handleFile(this.files[0])" />
當然,在現實生活中,您應該使其優雅地降級。
file
對象具有name
和type
屬性,如果您想更嚴格的話,可以使用它來驗證它是CSV文件。
不,您不能使用javascript從用戶的計算機上讀取文件。 如果您想要跨瀏覽器的方式來執行此操作,則必須從Flash或Java之類獲得幫助。
在HTML5中有一個針對File API的W3C建議 。 我針對此測試運行了一些瀏覽器,發現Firefox 3.6和Chrome 6支持File Reader API
和Local Storage
。 Safari 5(在Windows上)支持Local Storage
但不支持File Reader API
。 抱歉,我無法測試IE9,因為公司政策已將IE6(?!)固定在適當的位置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.