Untitled
unknown
javascript
3 years ago
2.7 kB
14
Indexable
const fs = require("fs")
parseString = require("xml2js").parseString;
xml2js = require("xml2js");
const path = require('path')
const {Translate} = require('@google-cloud/translate').v2;
const fullPath = path.join(__dirname, 'xml')
let inames = [];
let idescs = [];
// Creates a client
const translate = new Translate({
});
async function translateText(text, target) {
// Translates the text into the target language. "text" can be a string for
// translating a single piece of text, or an array of strings for translating
// multiple texts.
let translation = await translate.translate(text, target);
return translation[0];
}
//character //json.imgdir.imgdir[0].string[0].$.value
//item //
fs.readdir(fullPath, (error, files) => {
if (error) console.log(error)
files.forEach(function(file) {
fs.readFile("xml/" + file, "utf-8", function(err, data) {
if (err) console.log(err);
parseString(data, function(err, result) {
if (err) console.log(err);
var json = result;
for(i = 0; i < json.imgdir.imgdir.length; i++) {
iname = json.imgdir.imgdir[i].imgdir[0].string[0].$.value;
idesc = json.imgdir.imgdir[i].imgdir[0].string[1].$.value;
translateText(iname, 'en').then(res => {
inames.push(res);
});
translateText(idesc, 'en').then(res => {
idescs.push(res);
});
}
console.log(idescs);
for(i = 0; i < json.imgdir.imgdir.length; i++) {
//console.log(i);
//console.log(inames[i]);
//json.imgdir.imgdir[i].imgdir[0].string[0].$.value = inames[i];
//json.imgdir.imgdir[i].imgdir[0].string[1].$.value = idescs[i];
}
/*
translateText(jp, 'en').then(result => {
json.imgdir.imgdir[0].string[0].$.value = result;
var builder = new xml2js.Builder();
var xml = builder.buildObject(json);
fs.writeFile("xml/" + file, xml, function(err) {
if (err) {
console.log("err")
} else {
console.log("Xml file successfully updated.")
}
})
});
*/
});
})
})
})
Editor is loading...