Я пишу приложение, которое будет запускаться в браузере webkit. Мне нужно, чтобы данные были локально сохранены на устройстве и экспортированы в формате .csv. Возможно ли это с помощью javascript? Это нужно сделать в браузере. Php не вариант. СпасибоКак экспортировать веб-SQL в файл .CSV
ответ
Предполагая, что файл sqlite находится на сервере (мы не говорим о локальном хранилище, верно?), Вам все равно придется обращаться к файловой серверной стороне.
Я говорю о хранилище sql в браузере. Вот ссылка. http://www.w3.org/TR/webdatabase/ – Tim
Вы можете сделать это, но вам нужно будет сериализовать ваш javascript в csv вручную. Вам также нужно будет решить, какой диалект CSV использовать.
Ниже приведена одна (непроверенная) возможность, которая показывает общий шаблон, который вы должны использовать.
function csvQuoteCell(cell, quotechar, sepchar) {
// quote cells containing sepchar and double quote chars
// this is an excel dialect
var quoted = cell;
if (cell.indexOf(sepchar)!==-1) {
if (cell.indexOf(quotechar)!==-1 {
quoted = quoted.replace(quotechar, quotechar+quotechar);
}
quoted = quotechar+quoted+quotechar;
}
return quoted;
}
function array2csv(ar, quotechar, sepchar) {
var quoted = [];
for (var i=0;i<ar.length;i++) {
quoted.push(csvQuoteCell(ar[i], quotechar, sepchar);
}
return quoted.join(sepchar);
}
var db = openDatabase('mydb','1.0','thedatabase',1024*1024);
db.readTransaction(function(tx){
tx.executeSql('SELECT col1, col2, col3 FROM thetable', [], function(tx, results){
var quotechar = '"';
var sepchar = ',';
var row, rowarray, csvstring;
var csvs = [];
var fieldnames = ['col1','col2','col3'];
// this is the header row
csvs.append(array2csv(fieldnames, quotechar, sepchar));
for (var i=0; i<results.rows.length; i++) {
row = results.rows.item(i);
// you need to make sure you have an explicit order for the csv
// row is an object with unordered keys!
rowarray = [];
for (var j=0;j<fieldnames.length;j++) {
rowarray.push(row[fieldnames[j]]);
}
csvs.push(array2csv(rowarray, quotechar, sepchar));
}
csvstring = csvs.join('\r\n');
// csvstring should now contain a multirow csv string
});
});
Однако, это, вероятно, не представляется возможным «скачать» файл из JavaScript в локальной файловой системе, только, чтобы загрузить его на сервер. В зависимости от вашей конкретной среды браузера вы можете использовать очень-черновик FileWriter api, какую-либо флеш-карту или java-апплет, или, может быть, какой-то проприетарный API, предлагаемый вашим устройством.
Можете ли вы создать этот файл, а затем отправить его по ftp? – Tim
Если ваша среда браузера не имеет некоторых расширений ftp, скорее всего, нет. Тем не менее, вы можете HTTP POST или PUT с помощью XMLHttpRequest. –
- 1. Как экспортировать курсор foxpro в файл CSV?
- 2. Как экспортировать данные HTML в файл CSV
- 3. Как экспортировать CSV-файл в заголовок кода?
- 4. Как экспортировать JTable в CSV-файл?
- 5. Как экспортировать в csv файл журнала gatling
- 6. Как экспортировать данные JFreeChart в файл csv
- 7. Как экспортировать файл csv в LibreOffice 'Calc?
- 8. Как экспортировать CSV файл, закодированный «Unicode»
- 9. Как экспортировать файл SQLite в CSV файл в iPhone SDK
- 10. Как экспортировать динамически созданный временный файл csv?
- 11. Как экспортировать файл csv с определенным именем?
- 12. Написать в CSV-файл и экспортировать его?
- 13. Как экспортировать в CSV, используя кнопку Экспортировать
- 14. экспортировать массив ячеек MATLAB в файл csv
- 15. Как экспортировать текстовый файл в файл csv с помощью perl?
- 16. экспортировать список таблицы в файл CSV
- 17. можно экспортировать данные поиска в файл csv
- 18. Экспортировать захваченные данные powershell в файл csv
- 19. Как экспортировать массив в csv
- 20. Как экспортировать csv как zip-файл в C#
- 21. MySQL: динамически экспортировать CSV-файл с заголовками
- 22. Экспортировать null в .csv
- 23. Как экспортировать результат печати в файл csv в Python?
- 24. Как экспортировать двумерную матрицу в файл csv в Python?
- 25. Как экспортировать данные в CSV-файл из hdfs в mysql?
- 26. Как экспортировать таблицу данных в файл csv в угловом
- 27. Как экспортировать словарь в файл csv в python
- 28. Как экспортировать данные в файл csv в Android?
- 29. Экспортировать большой файл CSV параллельно SQL-серверу
- 30. Как экспортировать DataFrame в csv в Scala?
Вы имеете в виду базу данных веб-SQL? 'Window.openDatabase()'? –
Да, вот что я имел в виду. http://www.w3.org/TR/webdatabase/ – Tim