Alapvető I/O-műveletek
A térbeli adatfájlok olvasására szolgáló eszközök mellett a térbeli I/O-modul az alapvető mögöttes kódtárakat is elérhetővé teszi az XML és a tagolt adatok gyors és hatékony olvasásához és írásához.
A atlas.io.core
névtér két alacsony szintű osztályt tartalmaz, amelyek gyorsan képesek CSV- és XML-adatok olvasására és írására. Ezek az alaposztályok a Térbeli I/O-modul térbeli adatolvasóit és íróit ják. Nyugodtan használhatja őket, hogy további olvasási és írási támogatást adjon a CSV- vagy XML-fájlokhoz.
Tagolt fájlok olvasása
A atlas.io.core.CsvReader
osztály beolvassa a tagolt adatkészleteket tartalmazó sztringeket. Ez az osztály két módszert biztosít az adatok olvasására:
- A
read
függvény beolvassa a teljes adatkészletet, és egy kétdimenziós sztringtömböt ad vissza, amely a tagolt adatkészlet összes celláját képviseli. - A
getNextRow
függvény beolvassa az egyes szövegsorokat egy tagolt adatkészletben, és egy sztringtömböt ad vissza, amely az adott adatsor összes celláját képviseli. A felhasználó feldolgozhatja a sort, és a következő sor feldolgozása előtt eltávolíthatja a felesleges memóriát az adott sorból. A függvény tehát hatékonyabb memóriahasználatot eredményez.
Alapértelmezés szerint az olvasó a vessző karaktert használja elválasztóként. Az elválasztó karakter azonban bármely karakterre módosítható, vagy beállítható értékre.'auto'
Ha a értékre van 'auto'
állítva, az olvasó elemzi a sztring első szövegsorát. Ezután kiválasztja az alábbi táblázat legelterjedtebb karakterét, amelyet elválasztóként használ.
Elválasztó | Karakter |
---|---|
Vessző | , |
Tab | \t |
Cső | | |
Ez az olvasó az elválasztó karaktert tartalmazó cellák kezelésére használt szövegjelölőket is támogatja. Az idézőjel ('"'
) karakter az alapértelmezett szövegjelölő, de bármely karakterre módosítható.
Tagolt fájlok írása
A atlas.io.core.CsvWriter
objektumtömböt tagolt sztringként ír. Bármely karakter használható elválasztóként vagy szövegjelölőként. Az alapértelmezett elválasztó vessző (','
) és az alapértelmezett szövegjelölő az idézőjel ('"'
) karakter.
Az osztály használatához kövesse az alábbi lépéseket:
- Hozza létre a osztály egy példányát, és igény szerint állítson be egyéni elválasztót vagy szövegjelölőt.
- Adatok írása a osztályba a
write
függvény vagy awriteRow
függvény használatával.write
A függvényhez adjon át egy kétdimenziós objektumtömböt, amely több sort és cellát jelöl. AwriteRow
függvény használatához adjon át egy több oszlopból álló adatsort jelölő objektumtömböt. - Hívja meg a függvényt
toString
a tagolt sztring lekéréséhez. - Ha szeretné, hívja meg a metódust,
clear
hogy az író újrafelhasználható legyen, és csökkentse az erőforrás-lefoglalást, vagy hívja meg adelete
metódust az írópéldány törléséhez.
Megjegyzés
A megírt oszlopok száma az írónak átadott adatok első sorának celláinak számához lesz korlátozva.
XML-fájlok olvasása
Az atlas.io.core.SimpleXmlReader
osztály gyorsabban elemzi az XML-fájlokat, mint DOMParser
a . Az atlas.io.core.SimpleXmlReader
osztálynak azonban megfelelően kell formáznia az XML-fájlokat. A nem megfelelően formázott XML-fájlok( például hiányzó záró címkék) hibát okozhatnak.
Az alábbi kód bemutatja, hogyan használható a SimpleXmlReader
osztály egy XML-sztring JSON-objektummá való elemzésére és kívánt formátumba való szerializálására.
//Create an instance of the SimpleXmlReader and parse an XML string into a JSON object.
var xmlDoc = new atlas.io.core.SimpleXmlReader().parse(xmlStringToParse);
//Verify that the root XML tag name of the document is the file type your code is designed to parse.
if (xmlDoc && xmlDoc.root && xmlDoc.root.tagName && xmlDoc.root.tagName === '<Your desired root XML tag name>') {
var node = xmlDoc.root;
//Loop through the child node tree to navigate through the parsed XML object.
for (var i = 0, len = node.childNodes.length; i < len; i++) {
childNode = node.childNodes[i];
switch (childNode.tagName) {
//Look for tag names, parse and serialized as desired.
}
}
}
XML-fájlok írása
Az atlas.io.core.SimpleXmlWriter
osztály jól formázott XML-t ír memória hatékonyan.
Az alábbi kód bemutatja, hogyan használható a SimpleXmlWriter
osztály egy jól formázott XML-sztring létrehozására.
//Create an instance of the SimpleXmlWriter class.
var writer = new atlas.io.core.SimpleXmlWriter();
//Start writing the document. All write functions return a reference to the writer, making it easy to chain the function calls to reduce the code size.
writer.writeStartDocument(true)
//Specify the root XML tag name, in this case 'root'
.writeStartElement('root', {
//Attributes to add to the root XML tag.
'version': '1.0',
'xmlns': 'http://www.example.com',
//Example of a namespace.
'xmlns:abc': 'http://www.example.com/abc'
});
//Start writing an element that has the namespace abc and add other XML elements as children.
writer.writeStartElement('abc:parent');
//Write a simple XML element like <title>Azure Maps is awesome!</title>
writer.writeElement('title', 'Azure Maps is awesome!');
//Close the element that we have been writing children to.
writer.writeEndElement();
//Finish writing the document by closing the root tag and the document.
writer.writeEndElement().writeEndDocument();
//Get the generated XML string from the writer.
var xmlString = writer.toString();
A fenti kódból létrehozott XML az alábbihoz hasonlóan nézne ki.
<?xml version="1.0" encoding="UTF-8"?>
<root version="1.0" xmlns="http://www.example.com" xmlns:abc="http://www.example.com/abc">
<abc:parent>
<title>Azure Maps is awesome!</title>
</abc:parent>
</root>
Következő lépések
További információ a cikkben használt osztályokról és módszerekről:
A következő cikkekben további kódmintákat talál, amelyek hozzáadandók a térképekhez:
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: