var adTypeBinary = 1;
var adTypeText = 2;
var bOverwrite = true;
var bAsASCII = false;
var oFS = new ActiveXObject("Scripting.FileSystemObject");
var sFiNa = "OPM_Mitarbeiter.csv";
var sFrom = "Windows-1252";
var sFFSpec = oFS.GetAbsolutePathName( sFiNa);
var oTo = new ActiveXObject( "ADODB.Stream" );
var sTo = "utf-8";
var sTFSpec = oFS.GetAbsolutePathName( sFiNa + "-utf8.txt" );
WScript.Echo("File name:"+sTFSpec);
if (oFS.FileExists( sTFSpec )) {oFS.DeleteFile(sTFSpec);};
var oFrom = new ActiveXObject( "ADODB.Stream" );
oFrom.Type = adTypeText;
oFrom.Charset = sFrom;
oFrom.Open();
oFrom.LoadFromFile(sFFSpec);
WScript.Echo(oFrom.Size + " Bytes in " + sFFSpec);
var oTo = new ActiveXObject( "ADODB.Stream" );
oTo.Type = adTypeText;
oTo.Charset = sTo;
oTo.Open();
oTo.WriteText(oFrom.ReadText());
WScript.Echo(oTo.Size + " Bytes in " + sTFSpec);
var adSaveCreateNotExist = 1;
WScript.Echo(sTFSpec);
oTo.SaveToFile(sTFSpec , adSaveCreateNotExist);
oFrom.Close();
oTo.Close();
WScript.Echo("Das Programm ist nicht abgestürzt");
Donnerstag, 28. Juni 2012
convert ANSI to UTF-8 using JavaScript
Remove BOM in Javascript
Sometimes you need to remove the BOM from a UTF-8 File. E.g. because Java can't deal with it. So if you use Windows as your OS you can use the follwing JavaScript.
Simple execute it in a console.
Simple execute it in a console.
// Removes the Byte Order Mark - BOM from a text file with UTF-8 encoding
// The BOM defines that the file was stored with an UTF-8 encoding.
function RemoveBOM(filePath) {
// Create a reader and a writer
var writer,reader, fileSize;
var writer = new ActiveXObject("Adodb.Stream");
var reader = new ActiveXObject("Adodb.Stream");
// Load from the text file we just wrote
reader.Open();
reader.LoadFromFile( filePath);
// Copy all data from reader to writer, except the BOM
writer.Mode=3;
writer.Type=1;
writer.Open();
reader.position=5;
reader.copyto(writer,-1);
// Overwrite file
writer.SaveToFile(filePath,2);
// Return file name
RemoveBOM = filePath;
// Kill objects
var writer = null;
var reader = null;
}
RemoveBOM("OPM_Mitarbeiter.csv-utf8.txt");
cscript bomremover.js
Abonnieren
Posts (Atom)