summaryrefslogtreecommitdiffstats
path: root/src/arrow/js/examples/read_file.html
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:54:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:54:28 +0000
commite6918187568dbd01842d8d1d2c808ce16a894239 (patch)
tree64f88b554b444a49f656b6c656111a145cbbaa28 /src/arrow/js/examples/read_file.html
parentInitial commit. (diff)
downloadceph-e6918187568dbd01842d8d1d2c808ce16a894239.tar.xz
ceph-e6918187568dbd01842d8d1d2c808ce16a894239.zip
Adding upstream version 18.2.2.upstream/18.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/arrow/js/examples/read_file.html')
-rw-r--r--src/arrow/js/examples/read_file.html91
1 files changed, 91 insertions, 0 deletions
diff --git a/src/arrow/js/examples/read_file.html b/src/arrow/js/examples/read_file.html
new file mode 100644
index 000000000..1013fbe79
--- /dev/null
+++ b/src/arrow/js/examples/read_file.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<html>
+ <head>
+ <title>Arrow.js browser test</title>
+ <meta charset="utf-8">
+ <style>
+table {
+ border-collapse: collapse;
+}
+table, th, td {
+ border: 1px solid black;
+ white-space: nowrap;
+}
+ </style>
+ <script type="text/javascript">
+var reader = new FileReader();
+function addCell (tr, type, value) {
+ var td = document.createElement(type)
+ td.textContent = value;
+ tr.appendChild(td);
+}
+reader.onload = function (evt) {
+
+ var arrowTable = Arrow.Table.from([new Uint8Array(evt.target.result)]);
+ var thead = document.getElementById("thead");
+ var tbody = document.getElementById("tbody");
+
+ while (thead.hasChildNodes()) {
+ thead.removeChild(thead.lastChild);
+ }
+
+ while (tbody.hasChildNodes()) {
+ tbody.removeChild(tbody.lastChild);
+ }
+
+ var header_row = document.createElement("tr");
+ for (let field of arrowTable.schema.fields) {
+ addCell(header_row, "th", `${field}`);
+ }
+
+ thead.appendChild(header_row);
+
+ for (let row of arrowTable) {
+ var tr = document.createElement("tr");
+ for (let cell of row) {
+ addCell(tr, "td",
+ cell == null ? 'null'
+ : !Array.isArray(cell) ? cell
+ : '[' + cell.map((value) => value == null ? 'null' : value).join(', ') + ']'
+ );
+ }
+ tbody.appendChild(tr);
+ }
+}
+
+function handleFiles(files) {
+ reader.readAsArrayBuffer(files[0]);
+}
+ </script>
+ </head>
+ <body>
+ <input id="arrow-in" type="file" onchange="handleFiles(this.files)" />
+ <table>
+ <thead id="thead">
+ </thead>
+ <tbody id="tbody">
+ </tbody>
+ </table>
+ <script type="text/javascript" src="../targets/es2015/umd/Arrow.js"></script>
+ </body>
+</html>