| 

.NET C# Java Javascript Exception

1
Ich habe einen kleinen Konverter in JavaScript programmiert, der aus 2 .csv-Dateien, eine gemeinsame macht und dabei auch das Format von csv in ein anderes konvertiert.

Den Benutzern ist es aber zu umständlich die zu konvertierenden Dateien mit vorgegeben Namen irgendwo per FTP hochzuladen.

Daher stellt sich mir die Frage:
Wie ich mit JavaScript eine Datei hochladen [sie muss noch nicht mal auf dem Server irgendwo abgelegt werden - sie soll ja nur weiterverarbeitet werden] - und das Ergebnis direkt wieder zum Download anbieten. Gibt es da Funktionen die man nutzen kann?



Nein, ich kann das Konverter-Javascript an meine Benutzer nicht lokal verteilen, so dass sie die Konvertierung selbst lokal ausgeführt wird, da ich regelmässig Änderungen an dem Konverter vornehmen möchte - also Updates - und dazu eben eine Webseite mit dem JavaScript optimal ist, da so alle Benutzer immer auf dem gleichen Stand sind.
News:
21.08.2011
Gast
3 2
Fragen beantworten sich nicht schneller dadurch das man sie zweimal stellt: http://codekicker.de/fragen/javascript-JavaScript-Text-Datei-laden-umformatieren-Ergebnis-herunterladen-konvertieren-download-hochladen-webbrowser
lunatigs 21.08.2011
2 Antworten
0
Hallo,

ich habe noch nicht alles Verstanden von dem was du vor hast. Bis jetzt ist es also so, das deine Benutzer eine (oder zwei?) Dateien via FTP auf einen Server hochladen. Im zweiten Schritt rufen Sie in einem Browser eine Webseite auf und dein Javascript greift dann auf die zuvor hochgeladene Datei zu? Da das technisch mit javascript / html nicht möglich ist auf den Server zuzugreifen, habe ich entweder etwas falsch verstanden oder du benutzt zusätzlich noch irgend was anderes.

Wenn es darum geht dem Benutzer ein Konvertierungs / Merging Tool für CSV-Dateien bereitzustellen wäre der bessere Ansatz wahrscheinlich ein PHP / ASP Script mit einer simplen GUI

Auf folgender Seite kannst du lesen, wie ein Upload mit PHP funktionieren kann:
http://de3.php.net/manual/de/features.file-upload.post-method.php

Die CSV Dateien könnten dann über ein HTML Formular zum Server gesendet werden; Manueller upload via FTP wäre nicht länger nötig. Außerdem könnte PHP dann auch gleich die Konvertierungen übernehmen, die dein JavaScript ausführt. Nach erfolgreicher Arbeit kann Php auch ein download Link für den Benutzer generieren.

Falls du dich für eine Lösung mit PHP / Asp entscheiden solltest und du noch nicht so viel Erfahrung hast, würde ich dir empfehlen den Code wo der Upload auf den Server geschieht, hier bei Codekicker zur Diskussion zu stellen. Bei sowas kann man leicht Fehler einbauen die du nicht haben willst ...

Grüße
22.08.2011
Nicolai Schönberg 2,4k 1 9
0
Nicolai Schönberg hat Recht: ohne eine serverseitige Anbindung wirst Du imho keine "saubere" Lösung realisieren können.

Eine Möglichkeit wäre u.U. noch die Anprogrammierung des Filesystem-Objektes von Microsoft
aus JavaScript oder VBScript heraus:

<SCRIPT language="JavaScript">

function WriteFile()
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var myTextFile = fso.CreateTextFile("c:\readme.txt", true);
myTextFile.WriteLine("BlaBlaBlub");
myTextFile.Close();
}
</SCRIPT>


Das setzt natürlich voraus, dass Deine Zielplattform Windows ist und der Browser Active-X unterstützt. Das ist meiner Meinung nach auch nur eine Notlösung, wenn man keine serverseitige Infrastruktur zur Verfügung hat.

LG, Michael
23.08.2011
mblaess 1,1k 8

Stelle deine Javascript-Frage jetzt!