-
Notifications
You must be signed in to change notification settings - Fork 0
/
infoToXml.js
49 lines (40 loc) · 1.34 KB
/
infoToXml.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
var fs = require('fs');
var js2xml = require("js2xmlparser");
var regText = fs.readFileSync("regions.json");
var regions = JSON.parse(regText);
var RegionXData = [];
var ParameterValueXData = [];
for (var i = 0; i < regions.length; i++) {
var Region = {
"Name": regions[i].name,
"Guid": regions[i].uuid,
"DataUrl": regions[i].name
};
if(regions[i].parent) Region.ParentRegion = regions[i].parent;
RegionXData.push(Region);
var ParameterValue = {
"Region": regions[i].uuid,
"Parameter": 1,
"Value": regions[i].population
};
ParameterValueXData.push(ParameterValue);
ParameterValue = {
"Region": regions[i].uuid,
"Parameter": 2,
"Value": regions[i].area
};
ParameterValueXData.push(ParameterValue);
}
var ParameterXData = [
{Name: "Population"},
{Name: "Area", UnitName: "sq km"}
];
RegionXData = {"Region": RegionXData};
ParameterValueXData = {"ParameterValue": ParameterValueXData};
ParameterXData = {"Parameter": ParameterXData};
var textRegion = js2xml.parse("RegionXData",RegionXData);
var textParameterValue = js2xml.parse("ParameterValueXData",ParameterValueXData);
var textParameter = js2xml.parse("ParameterXData",ParameterXData);
fs.writeFileSync('result\\RegionXData.xml', textRegion);
fs.writeFileSync('result\\ParameterValueXData.xml', textParameterValue);
fs.writeFileSync('result\\ParameterXData.xml', textParameter);