asp.net+js 实现无刷新上传解析csv文件的代码_javascript技巧
前阵子工作中用到,贴上代码,仅保留上传有关的代码,发现code其实很少。
上传页面html/js
处理文件上传的c#
if (context.Request.Files.Count > 0)
{
HttpPostedFile file = context.Request.Files[0];
if (file.ContentLength > 0)
{
string title = string.Empty;
title = DateTime.Now.ToString("yyyyMMddHHmmss") + "_" + Path.GetFileName(file.FileName);
string path = "./Upload/" + title;
path = System.Web.HttpContext.Current.Server.MapPath(path);
file.SaveAs(path);
context.Response.Write("<script>window.parent.FinishUpload('" + HttpUtility.UrlEncode(path) + "');</script>");
}
}
else
{
context.Response.Write("<script>window.parent.FinishUpload('');</script>");
}
做到无刷新,基本原理就是:通过表单提交到iframe里,从而使刷新发生在iframe里。form设置action指向处理上传的文件,target指向iframe。上传操作的结果可以返回到iframe里,调用父对象的FinishUpload方法显示是否上传成功。所以在AJAX未流行时,常用这种方法来伪装未刷新的效果,现在仍然可以使用。
要注意的是:
enctype="multipart/form-data"不可少,enctype默认编码是“application/x-www-form-urlencoded”,设置enctype="multipart/form-data",用于二进制方式上传文件。
为防止文件名乱码,防止乱七八糟字符URL传递中出现问题,返回文件名到前台时进行HttpUtility.UrlEncode,在前台JS中取文件名时进行decodeURIComponent。
重置文件选择框时,要把文件选择框临时插入到临时表单,通过表单的reset方法重置。
顺便贴上解析上传的csv文件的code
解析csv文件
private DataTable ImportDataTable(string filepath)
{
DataTable mydt = new DataTable("myTableName");
mydt.Columns.Add("Data ID", System.Type.GetType("System.String"));
mydt.Columns.Add("Field Name", System.Type.GetType("System.String"));
mydt.Columns.Add("New Value", System.Type.GetType("System.String"));
DataRow mydr;
using (System.IO.StreamReader mysr = new System.IO.StreamReader(filepath))
{
int data;
char current;
StringBuilder text = new StringBuilder();
IDictionary
bool isInYinHao = false; ;
int lineId = 1;
int index = 0;
while (true)
{
data = mysr.Read();
if (data != -1)
{
current = (char)data;
if (current == '"')
{
if (isInYinHao)
{
isInYinHao = false;
}
else
{
if (index > 0)
{
text.Append(current);
}
isInYinHao = true;
}
}
else if (current == ',')
{
if (isInYinHao)
{
text.Append(current);
}
else
{
SaveResult(results, lineId, text);
index = 0;
continue;
}
}
else if (current == '\r')
{
if (isInYinHao)
{
text.Append(current);
}
}
else if (current == '\n')
{
if (isInYinHao)
{
text.Append(current);
}
else
{
SaveResult(results, lineId, text);
index = 0;
lineId++;
continue;
}
}
else if (current == '\0')
{
}
else
{
text.Append(current);
}
index++;
}
else
{
//Read to file end.
SaveResult(results, lineId, text);
break;
}
}
foreach (int id in results.Keys)
{
mydr = mydt.NewRow();
for (int i = 0; i {
if (i > 2)
{
break;
}
mydr[i] = results[id][i];
}
mydt.Rows.Add(mydr);
}
}
return mydt;
}
private void SaveResult(IDictionary
{
if (!results.ContainsKey(lineId))
{
results.Add(lineId, new List
}
results[lineId].Add(text.ToString());
text.Remove(0, text.Length);
}
点击下载

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Laravel ist eines der herausragendsten PHP-Frameworks der Branche. Seine leistungsstarken Funktionen und die benutzerfreundliche API machen es bei Entwicklern sehr beliebt. In der tatsächlichen Entwicklung müssen wir häufig Daten importieren und exportieren, und CSV ist als weit verbreitetes Datenformat auch zu einem der am häufigsten verwendeten Import- und Exportformate geworden. In diesem Artikel wird erläutert, wie Sie die LaravelExcel-Erweiterung zum Importieren und Exportieren von CSV-Dateien verwenden. 1. Installieren Sie zunächst LaravelExcel

So konvertieren Sie einen JSON-String in das CSV-Format: 1. Erstellen Sie eine PHP-Beispieldatei. 2. Konvertieren Sie den JSON-String in ein PHP-Array oder -Objekt. 3. Erstellen Sie ein Dateihandle und öffnen Sie eine CSV-Datei zum Schreiben Kopfzeile und Datenzeile in der CSV-Datei; 5. Schreiben Sie die Datenzeile in die CSV-Datei und verwenden Sie Kommatrennzeichen zwischen den Feldern, schließen Sie das Dateihandle und schließen Sie die Konvertierung ab.

In diesem Artikel wird ausführlich erläutert, wie PHP Zeilen in CSV formatiert und Dateizeiger schreibt. Ich hoffe, dass Sie nach dem Lesen dieses Artikels etwas daraus lernen können. Zeilen in CSV formatieren und in den Dateizeiger schreiben Schritt 1: Dateizeiger öffnen $file=fopen("path/to/file.csv","w"); in CSV-Strings umwandeln. Die Funktion akzeptiert die folgenden Parameter: $file: Dateizeiger $fields: CSV-Felder als Array $delimiter: Feldtrennzeichen (optional) $enclosure: Feldanführungszeichen (

Lösung für das Problem verstümmelter CSV-Dateien, die in PHP importiert werden: 1. Erstellen Sie eine Parsing-Funktion „function tb_str_getcsv($string, $delimiter=',', $enclosure='"') {...}"; 2. Lesen Sie die Datei in eine Variable ;3. Entfernen Sie den BOM-Header durch „substr($s,2)“.

Konvertieren Sie XML-Daten in Python in das CSV-Format. XML (ExtensibleMarkupLanguage) ist eine erweiterbare Auszeichnungssprache, die häufig zur Datenspeicherung und -übertragung verwendet wird. CSV (CommaSeparatedValues) ist ein durch Kommas getrenntes Textdateiformat, das häufig für den Datenimport und -export verwendet wird. Bei der Datenverarbeitung ist es manchmal erforderlich, XML-Daten zur einfachen Analyse und Verarbeitung in das CSV-Format zu konvertieren. Python ist mächtig

Java ist eine weit verbreitete Programmiersprache und Entwickler müssen häufig mit verschiedenen Datenformaten umgehen. CSV (Comma-SeparatedValues) ist ein gängiges Datenformat, das häufig zum Datenaustausch und zur Datenspeicherung verwendet wird. In Java können wir die OpenCSV-Bibliothek zum Lesen und Schreiben von CSV-Dateien verwenden. OpenCSV ist eine benutzerfreundliche Open-Source-Bibliothek, die eine praktische API zur Verarbeitung von CSV-Daten bereitstellt. In diesem Artikel wird erklärt, wie das geht

Überblick über die wichtigsten Wissenspunkte a.SwingNode-Klasse: Kapseln Sie Javaswing-Komponenten in einen JavaFX-Knoten, sodass JavaSwing mit JavaFX verschachtelt werden kann. JavaFX-Tabellenkomponenten (TableView usw.) sind etwas kompliziert , also Wählen Sie verschachteltes JavaSwing aus, um es zu verwenden, nur hässlich b.javacsv-2.0.jar: Wird zum Lesen von CSV-Dateien über Dateiadressen verwendet und kann eine Reihe von Vorgängen ausführen. Obwohl es nach 2008 nicht mehr aktualisiert wird, kann es a csv-Datei Es reicht. c.FileChoose-Klasse: ein Dateiselektor für JavaFX, der das kann

csv in vcf durch die Schritte Öffnen von CSV-Dateien, Formatieren von CSV-Dateien, Exportieren von CSV-Dateien, Anpassen des VCF-Dateiformats und Speichern von VCF-Dateien. Detaillierte Einführung: 1. Öffnen Sie die CSV-Datei. Sie können Microsoft Excel, Google Sheets oder ein anderes Tabellenkalkulationsprogramm verwenden, um die CSV-Datei zu öffnen. 2. Formatieren Sie die CSV-Datei, um sicherzustellen, dass die Spaltenüberschriften der CSV-Datei klar sind. Exportieren Sie die CSV-Datei usw.
