PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (2): [1] 2 »

> Найдено сообщений: 17
Rick_77 Отправлено: 25 Августа, 2023 - 10:19:27 • Тема: Парсинг dbf обработка поля • Форум: Вопросы новичков

Ответов: 0
Просмотров: 774
Ребят, подскажите!

Считываю базу из dbf:

PHP:
скопировать код в буфер обмена
  1.     $filename = "2600333233.dbf";
  2.     $dbf = dbase_open($filename, 0);
  3.     if (!$dbf) die("Ошибка!");
  4.      
  5.     $records = dbase_numrecords($dbf);
  6.       for ($i = 1; $i <= $records; $i++)
  7.           {
  8.     // Здесь нужно обработать поле DESCRIPT и найти в строке значение "о/р", после него число и записать в новую dbf-ку найденное чило
  9.           }
  10.     dbase_close($dbf);


Спасибо.
Rick_77 Отправлено: 09 Марта, 2021 - 15:10:46 • Тема: Файл txt, загрузка, массив, выборка • Форум: Вопросы новичков

Ответов: 8
Просмотров: 717
Rick_77 пишет:
Rick_77 пишет:
Rick_77 пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Граждане знающие.
Существует ли шаблон для решения такой задачи:
- текстовый файл, в нём заголовок (текстовая информация);
- далее заголовок таблицы;
- и данные в таблице (числа).
Необходимо выбрать этот текстовый файл, спарсить его и записать в массив числа, для последующего оперирования цифр, а после выгрузить данные в экселевский файл.
Вот такой вот запрос.

Добрый день!
Существует много заготовок и готовых примеров,
про то как читать, парзить и сохранять,
но с начала желательно уточнить постановку задачи.
Начнём с того, что таблицы бывают, где угодо, но только не в тестовых файлах.
Уточните, пожалуста, структуру данных в этом файле, а ещё лучше покажите образец.
В каком Excel-формате (CSV, XLS... ) нужно сохранить файл?
Удачи!


Я не ошибся. Исходные данные ИМЕННО в текстовом файле. Шаблон привожу в прикреплённом файле. Это выгрузка из городской программы.
А сохранить необходимо в формате XLS.
Читал о том что нужны для этого библиотеки, но пока до них я не дошёл. Нужно решить первую часть - спарсить.


Покажите, пожалуйста, образец файла, не его шаблон.
Если очень секретный СС документ, замените данные на хххх.
Чтобы спарсить, необходимо увидеть, какие символы разделители колонок
в таблице, и.т.д

Спасибо за внимание к моему вопросу. Сделаю.


Всем привет!
Файл я спарсил. Сформировал массив. В консоли получаю интересующий меня результат. Но ещё не умею (не нашёл подходящий пример) свойства объекта доставать и формировать строку из них, а не добавлять весь объект для того, что бы выгрузить в экселевский файл.
Код ниже:

console.log('---Табличная часть:---');
for (let i = 0; i < borrowerData.data.length; i++) {
console.log(borrowerData.data[i]);
}
console.log('---Массив в CSV---');
var Results = [
["date", "Dolg_nach", "Pokaz_nach", "Pokaz_kon", "Nachisl_Voda_M", "Nachisl_Voda_Grn", "Nachisl_Stoki_M", "Nachisl_Stoki_Grn", "Poliv_Sotki", "Poliv_Grn", "Lgoty_Voda", "Lgoty_Stoki", "Recount", "Payed", "Supsid", "K_oplate", "Dolg_Kon_Mes"]
//[borrowerData.data[i]],
];
Results.push(borrowerData.data);
//exportToCsv = function()
var CsvString = "";
Results.forEach(function (RowItem, RowIndex) {
RowItem.forEach(function (ColItem, ColIndex) {
CsvString += ColItem + ';';
});
//CsvString += "\r\n";
CsvString += /^[\+,-]+$/;
console.log(Results);
});
CsvString = "data:application/csv," + encodeURIComponent(CsvString);
var x = document.createElement("A");
x.setAttribute("href", CsvString);
x.setAttribute("download", "Borrower.csv");
document.body.appendChild(x);
x.click();


Нашёл я ответы почти на все вопросы, что я написал выше. Получил я экселевский файл. Но есть проблема:
Заголовки не воспринимает по русски и форматы полей. А именно:
- заголовки пишут "шифровки" (краказябры);
- в поле где есть число, на пример 7,12 воспринимает как Июль 2012 года, но если перед точкой 2 числа заполняет как следует, т.е. например 56.15 там и пишет;
- и дату которую я парсю в ексель бросает не числом (04.2020 - апрель 2020), а форматом "апр.20".
Кто знает подскажите.
Спасибо.
P.S.
Прилагаю код выгрузки из массива/объектов в эксель.
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var arr = splitByCommasOutOfBrackets(originalString);
  3.  
  4. for (var i = 0; i < arr.length; i++) {
  5.   arr[i] = splitByCommasOutOfBrackets(arr[i]);
  6. }
  7. console.log(arr);
  8.   var CsvString = "";
  9.   Results.forEach(function (RowItem, RowIndex) {
  10.     RowItem.forEach(function (ColItem, ColIndex) {
  11.       CsvString += ColItem + ';';
  12.     });
  13.     CsvString += "\r\n";
  14.     console.log(Results);
  15.   });
  16.   CsvString = "data:application/csv," + encodeURIComponent(CsvString);
  17.   var x = document.createElement("A");
  18.   x.setAttribute("href", CsvString);
  19.   x.setAttribute("download", "Borrower.csv");
  20.   document.body.appendChild(x);
  21.   x.click();
  22.  


В дополнение ко всему ещё вопросы.
А именно:
- всё то что я спарсил будет использоваться в расчётах и под разные задачи расчётов будут создаваться новые листы в экселевском файле и в них СВОИ заголовки.
Возможно подсказать, как мне организовать мой массив под эти задачи?
Спасибо.
Rick_77 Отправлено: 09 Марта, 2021 - 08:39:18 • Тема: Экспорт в XML с помощью PHP • Форум: Вопросы новичков

Ответов: 13
Просмотров: 611
Vladimir Kheifets пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Однако не сработало корректно. А именно при длине в 12 символов записывает пустое значение.
И при длине в 10 символов тоже. Значит не срабатывает проверка на длину строки и переходит сразу на условие где значение >= 1
Значения в таблице у меня такие.
В случае с длиной строки тоже не срабатывает (strlen($row['naln']) == 12)

На самом деле с strlen($row['naln']) == 12) cрабатывало.
У Вас было проблема с " длина не превышает значения 1"
Я добавил в тэг value атрибут test, который после тестирования нужно убрать.
Спойлер (Отобразить)
Удачи!


Большущая благодарность за участие.
Решил вопрос таким способом:
PHP:
скопировать код в буфер обмена
  1.  
  2.     fwrite($create_f, '<ROW LINE="0" TAB="0" NAME="KB">'.PHP_EOL);
  3.                 if (strlen($row['naln']) == 10)
  4.                 {
  5.                         fwrite($create_f, '<VALUE>1</VALUE>'.PHP_EOL);
  6.                 }
  7.                         else if (strlen($row['naln']) == 12)
  8.                         {
  9.                 fwrite($create_f, '<VALUE>2</VALUE>'.PHP_EOL);
  10.                         }
  11.                 else
  12.                 {
  13.              fwrite($create_f, '<VALUE></VALUE>'.PHP_EOL);
  14.                 }
  15.     fwrite($create_f, '</ROW>'.PHP_EOL);
  16.  

Можно короче
PHP:
скопировать код в буфер обмена
  1. foreach($res as $row['naln'])
  2. {      
  3.     $len = strlen($row['naln']);
  4.     $value=$len==12?2:$len==10?1:"";
  5.     fwrite($create_f, '<ROW LINE="0" TAB="0" NAME="KB">'.PHP_EOL);  
  6.     fwrite($create_f, "<VALUE>$value</VALUE>".PHP_EOL);    
  7.     fwrite($create_f, '</ROW>'.PHP_EOL);
  8. }


Благодарю за помощь! Удачи!
Rick_77 Отправлено: 05 Марта, 2021 - 15:25:27 • Тема: Экспорт в XML с помощью PHP • Форум: Вопросы новичков

Ответов: 13
Просмотров: 611
Vladimir Kheifets пишет:
Rick_77 пишет:
Однако не сработало корректно. А именно при длине в 12 символов записывает пустое значение.
И при длине в 10 символов тоже. Значит не срабатывает проверка на длину строки и переходит сразу на условие где значение >= 1
Значения в таблице у меня такие.
В случае с длиной строки тоже не срабатывает (strlen($row['naln']) == 12)

На самом деле с strlen($row['naln']) == 12) cрабатывало.
У Вас было проблема с " длина не превышает значения 1"
Я добавил в тэг value атрибут test, который после тестирования нужно убрать.
Спойлер (Отобразить)
Удачи!


Большущая благодарность за участие.
Решил вопрос таким способом:
PHP:
скопировать код в буфер обмена
  1.  
  2.     fwrite($create_f, '<ROW LINE="0" TAB="0" NAME="KB">'.PHP_EOL);
  3.                 if (strlen($row['naln']) == 10)
  4.                 {
  5.                         fwrite($create_f, '<VALUE>1</VALUE>'.PHP_EOL);
  6.                 }
  7.                         else if (strlen($row['naln']) == 12)
  8.                         {
  9.                 fwrite($create_f, '<VALUE>2</VALUE>'.PHP_EOL);
  10.                         }
  11.                 else
  12.                 {
  13.              fwrite($create_f, '<VALUE></VALUE>'.PHP_EOL);
  14.                 }
  15.     fwrite($create_f, '</ROW>'.PHP_EOL);
  16.  
Rick_77 Отправлено: 05 Марта, 2021 - 11:13:37 • Тема: Экспорт в XML с помощью PHP • Форум: Вопросы новичков

Ответов: 13
Просмотров: 611
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77,
Вы заменили
PHP:
скопировать код в буфер обмена
  1.  //if (strlen($row['naln']==12))
  2. if ($row['naln']=12)
Потеряли знак =
т.е хотелось бы проверить не длину строки, а значение $row['naln']
попробуйте так:
Спойлер (Отобразить)
Удачи!

P.S. Для конвертироваия array в xml можно применить PHP class SimpleXMLElement
https://stackoverflow.com/questions/1397036/how-to-convert-array-to-simplexml

Благодарю ещё раз!
Однако не сработало корректно. А именно при длине в 12 символов записывает пустое значение.
(Добавление)
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77,
Вы заменили
PHP:
скопировать код в буфер обмена
  1.  //if (strlen($row['naln']==12))
  2. if ($row['naln']=12)
Потеряли знак =
т.е хотелось бы проверить не длину строки, а значение $row['naln']
попробуйте так:
Спойлер (Отобразить)
Удачи!

P.S. Для конвертироваия array в xml можно применить PHP class SimpleXMLElement
https://stackoverflow.com/questions/1397036/how-to-convert-array-to-simplexml

Благодарю ещё раз!
Однако не сработало корректно. А именно при длине в 12 символов записывает пустое значение.


И при длине в 10 символов тоже. Значит не срабатывает проверка на длину строки и переходит сразу на условие где значение >= 1
Значения в таблице у меня такие.
(Добавление)
Rick_77 пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77,
Вы заменили
PHP:
скопировать код в буфер обмена
  1.  //if (strlen($row['naln']==12))
  2. if ($row['naln']=12)
Потеряли знак =
т.е хотелось бы проверить не длину строки, а значение $row['naln']
попробуйте так:
Спойлер (Отобразить)
Удачи!

P.S. Для конвертироваия array в xml можно применить PHP class SimpleXMLElement
https://stackoverflow.com/questions/1397036/how-to-convert-array-to-simplexml

Благодарю ещё раз!
Однако не сработало корректно. А именно при длине в 12 символов записывает пустое значение.
(Добавление)
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77,
Вы заменили
PHP:
скопировать код в буфер обмена
  1.  //if (strlen($row['naln']==12))
  2. if ($row['naln']=12)
Потеряли знак =
т.е хотелось бы проверить не длину строки, а значение $row['naln']
попробуйте так:
Спойлер (Отобразить)
Удачи!

P.S. Для конвертироваия array в xml можно применить PHP class SimpleXMLElement
https://stackoverflow.com/questions/1397036/how-to-convert-array-to-simplexml

Благодарю ещё раз!
Однако не сработало корректно. А именно при длине в 12 символов записывает пустое значение.



И при длине в 10 символов тоже. Значит не срабатывает проверка на длину строки и переходит сразу на условие где значение >= 1
Значения в таблице у меня такие.

В случае с длиной строки тоже не срабатывает (strlen($row['naln']) == 12)
Rick_77 Отправлено: 05 Марта, 2021 - 10:49:06 • Тема: Экспорт в XML с помощью PHP • Форум: Вопросы новичков

Ответов: 13
Просмотров: 611
Vladimir Kheifets пишет:
Rick_77,
Вы заменили
PHP:
скопировать код в буфер обмена
  1.  //if (strlen($row['naln']==12))
  2. if ($row['naln']=12)
Потеряли знак =
т.е хотелось бы проверить не длину строки, а значение $row['naln']
попробуйте так:
Спойлер (Отобразить)
Удачи!

P.S. Для конвертироваия array в xml можно применить PHP class SimpleXMLElement
https://stackoverflow.com/questions/1397036/how-to-convert-array-to-simplexml
Благодарю ещё раз!
Однако не сработало корректно. А именно при длине в 12 символов записывает пустое значение.
(Добавление)
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77,
Вы заменили
PHP:
скопировать код в буфер обмена
  1.  //if (strlen($row['naln']==12))
  2. if ($row['naln']=12)
Потеряли знак =
т.е хотелось бы проверить не длину строки, а значение $row['naln']
попробуйте так:
Спойлер (Отобразить)
Удачи!

P.S. Для конвертироваия array в xml можно применить PHP class SimpleXMLElement
https://stackoverflow.com/questions/1397036/how-to-convert-array-to-simplexml

Благодарю ещё раз!
Однако не сработало корректно. А именно при длине в 12 символов записывает пустое значение.


И при длине в 10 символов тоже. Значит не срабатывает проверка на длину строки и переходит сразу на условие где значение >= 1
Rick_77 Отправлено: 05 Марта, 2021 - 08:01:35 • Тема: Экспорт в XML с помощью PHP • Форум: Вопросы новичков

Ответов: 13
Просмотров: 611
Vladimir Kheifets пишет:
Rick_77 пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Здравствуйте камрады!
Подскажите.
У меня УЖЕ есть готовый код, по экспорту в формат XML данных из MySQL. Однако не пойму одну вещь.
PHP:
скопировать код в буфер обмена
  1. if ($row['naln']>=1)
  2.   fwrite($create_f, '<VALUE></VALUE>'.PHP_EOL);

Загвоздка в третьем значении, а именно, ЕСЛИ длина не превышает значения 1, то необходимо в поле "KB" ничего не записывать.
Где, что я недосмотрел и почему?
Спасибо.

Добрый день! Если хотите проверить длину, то д.б.
Удачи!


Благодарю за внимание к такому, казалось бы простому вопросу (для меня). Пробую.



К сожалению не помогло(((


Покажите, пожалуйста, Ваш код так, чтобы он был читаемым - в блоке [PHP]
CODE (html):
скопировать код в буфер обмена
  1.  
  2. ...
  3. fwrite($create_f, '        <ROW LINE="0" TAB="0" NAME="KB">'.PHP_EOL);
  4.         //if (strlen($row['naln']==12))
  5.         if ($row['naln']=12)
  6.         {
  7.                 fwrite($create_f, '          <VALUE>2</VALUE>'.PHP_EOL);
  8.         }
  9.         else
  10.         {
  11.                 fwrite($create_f, '          <VALUE>1</VALUE>'.PHP_EOL);
  12.         }
  13.         {
  14.     if ($row['naln']>=1)
  15.                 fwrite($create_f, '<VALUE></VALUE>'.PHP_EOL);
  16.         }
  17.         fwrite($create_f, '        </ROW>'.PHP_EOL);
  18. ...
  19.  

Спасибо.
Rick_77 Отправлено: 04 Марта, 2021 - 16:21:39 • Тема: Экспорт в XML с помощью PHP • Форум: Вопросы новичков

Ответов: 13
Просмотров: 611
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Здравствуйте камрады!
Подскажите.
У меня УЖЕ есть готовый код, по экспорту в формат XML данных из MySQL. Однако не пойму одну вещь.
PHP:
скопировать код в буфер обмена
  1. if ($row['naln']>=1)
  2.   fwrite($create_f, '<VALUE></VALUE>'.PHP_EOL);

Загвоздка в третьем значении, а именно, ЕСЛИ длина не превышает значения 1, то необходимо в поле "KB" ничего не записывать.
Где, что я недосмотрел и почему?
Спасибо.

Добрый день! Если хотите проверить длину, то д.б.
Удачи!


Благодарю за внимание к такому, казалось бы простому вопросу (для меня). Пробую.


К сожалению не помогло(((
Rick_77 Отправлено: 04 Марта, 2021 - 14:13:53 • Тема: Экспорт в XML с помощью PHP • Форум: Вопросы новичков

Ответов: 13
Просмотров: 611
Vladimir Kheifets пишет:
Rick_77 пишет:
Здравствуйте камрады!
Подскажите.
У меня УЖЕ есть готовый код, по экспорту в формат XML данных из MySQL. Однако не пойму одну вещь.
PHP:
скопировать код в буфер обмена
  1. if ($row['naln']>=1)
  2.   fwrite($create_f, '<VALUE></VALUE>'.PHP_EOL);

Загвоздка в третьем значении, а именно, ЕСЛИ длина не превышает значения 1, то необходимо в поле "KB" ничего не записывать.
Где, что я недосмотрел и почему?
Спасибо.

Добрый день! Если хотите проверить длину, то д.б.
Удачи!

Благодарю за внимание к такому, казалось бы простому вопросу (для меня). Пробую.
Rick_77 Отправлено: 04 Марта, 2021 - 09:57:15 • Тема: Экспорт в XML с помощью PHP • Форум: Вопросы новичков

Ответов: 13
Просмотров: 611
Здравствуйте камрады!
Подскажите.
У меня УЖЕ есть готовый код, по экспорту в формат XML данных из MySQL. Однако не пойму одну вещь.
Есть условие при котором в поле записывается значение:
fwrite($create_f, ' <ROW LINE="0" TAB="0" NAME="KB">'.PHP_EOL);
if (strlen($row['naln']==12))
{
fwrite($create_f, ' <VALUE>2</VALUE>'.PHP_EOL);
}else{
fwrite($create_f, ' <VALUE>1</VALUE>'.PHP_EOL);
}
or
{
if ($row['naln']>=1)
fwrite($create_f, ' <VALUE></VALUE>'.PHP_EOL);
}
fwrite($create_f, ' </ROW>'.PHP_EOL);
И так. Первый этап.
Вычисляю длину строки в поле naln, если она равна 12, то в поле "KB" я записываю одно значение ( fwrite($create_f, ' <VALUE>2</VALUE>'.PHP_EOL);), иначе другое ( fwrite($create_f, ' <VALUE>1</VALUE>'.PHP_EOL);).
Загвоздка в третьем значении, а именно, ЕСЛИ длина не превышает значения 1, то необходимо в поле "KB" ничего не записывать.
Дело ещё в том, что когда добавляю ещё одну проверку, то скрипт не срабатывает.
Где, что я недосмотрел и почему?
Спасибо.
Rick_77 Отправлено: 18 Февраля, 2021 - 08:16:06 • Тема: Файл txt, загрузка, массив, выборка • Форум: Вопросы новичков

Ответов: 8
Просмотров: 717
Rick_77 пишет:
Rick_77 пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Граждане знающие.
Существует ли шаблон для решения такой задачи:
- текстовый файл, в нём заголовок (текстовая информация);
- далее заголовок таблицы;
- и данные в таблице (числа).
Необходимо выбрать этот текстовый файл, спарсить его и записать в массив числа, для последующего оперирования цифр, а после выгрузить данные в экселевский файл.
Вот такой вот запрос.

Добрый день!
Существует много заготовок и готовых примеров,
про то как читать, парзить и сохранять,
но с начала желательно уточнить постановку задачи.
Начнём с того, что таблицы бывают, где угодо, но только не в тестовых файлах.
Уточните, пожалуста, структуру данных в этом файле, а ещё лучше покажите образец.
В каком Excel-формате (CSV, XLS... ) нужно сохранить файл?
Удачи!


Я не ошибся. Исходные данные ИМЕННО в текстовом файле. Шаблон привожу в прикреплённом файле. Это выгрузка из городской программы.
А сохранить необходимо в формате XLS.
Читал о том что нужны для этого библиотеки, но пока до них я не дошёл. Нужно решить первую часть - спарсить.


Покажите, пожалуйста, образец файла, не его шаблон.
Если очень секретный СС документ, замените данные на хххх.
Чтобы спарсить, необходимо увидеть, какие символы разделители колонок
в таблице, и.т.д

Спасибо за внимание к моему вопросу. Сделаю.


Всем привет!
Файл я спарсил. Сформировал массив. В консоли получаю интересующий меня результат. Но ещё не умею (не нашёл подходящий пример) свойства объекта доставать и формировать строку из них, а не добавлять весь объект для того, что бы выгрузить в экселевский файл.
Код ниже:

console.log('---Табличная часть:---');
for (let i = 0; i < borrowerData.data.length; i++) {
console.log(borrowerData.data[i]);
}
console.log('---Массив в CSV---');
var Results = [
["date", "Dolg_nach", "Pokaz_nach", "Pokaz_kon", "Nachisl_Voda_M", "Nachisl_Voda_Grn", "Nachisl_Stoki_M", "Nachisl_Stoki_Grn", "Poliv_Sotki", "Poliv_Grn", "Lgoty_Voda", "Lgoty_Stoki", "Recount", "Payed", "Supsid", "K_oplate", "Dolg_Kon_Mes"]
//[borrowerData.data[i]],
];
Results.push(borrowerData.data);
//exportToCsv = function()
var CsvString = "";
Results.forEach(function (RowItem, RowIndex) {
RowItem.forEach(function (ColItem, ColIndex) {
CsvString += ColItem + ';';
});
//CsvString += "\r\n";
CsvString += /^[\+,-]+$/;
console.log(Results);
});
CsvString = "data:application/csv," + encodeURIComponent(CsvString);
var x = document.createElement("A");
x.setAttribute("href", CsvString);
x.setAttribute("download", "Borrower.csv");
document.body.appendChild(x);
x.click();


Нашёл я ответы почти на все вопросы, что я написал выше. Получил я экселевский файл. Но есть проблема:
Заголовки не воспринимает по русски и форматы полей. А именно:
- заголовки пишут "шифровки" (краказябры);
- в поле где есть число, на пример 7,12 воспринимает как Июль 2012 года, но если перед точкой 2 числа заполняет как следует, т.е. например 56.15 там и пишет;
- и дату которую я парсю в ексель бросает не числом (04.2020 - апрель 2020), а форматом "апр.20".
Кто знает подскажите.
Спасибо.
P.S.
Прилагаю код выгрузки из массива/объектов в эксель.
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var arr = splitByCommasOutOfBrackets(originalString);
  3.  
  4. for (var i = 0; i < arr.length; i++) {
  5.   arr[i] = splitByCommasOutOfBrackets(arr[i]);
  6. }
  7. console.log(arr);
  8.   var CsvString = "";
  9.   Results.forEach(function (RowItem, RowIndex) {
  10.     RowItem.forEach(function (ColItem, ColIndex) {
  11.       CsvString += ColItem + ';';
  12.     });
  13.     CsvString += "\r\n";
  14.     console.log(Results);
  15.   });
  16.   CsvString = "data:application/csv," + encodeURIComponent(CsvString);
  17.   var x = document.createElement("A");
  18.   x.setAttribute("href", CsvString);
  19.   x.setAttribute("download", "Borrower.csv");
  20.   document.body.appendChild(x);
  21.   x.click();
  22.  
Rick_77 Отправлено: 16 Февраля, 2021 - 14:53:39 • Тема: Файл txt, загрузка, массив, выборка • Форум: Вопросы новичков

Ответов: 8
Просмотров: 717
Rick_77 пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Граждане знающие.
Существует ли шаблон для решения такой задачи:
- текстовый файл, в нём заголовок (текстовая информация);
- далее заголовок таблицы;
- и данные в таблице (числа).
Необходимо выбрать этот текстовый файл, спарсить его и записать в массив числа, для последующего оперирования цифр, а после выгрузить данные в экселевский файл.
Вот такой вот запрос.

Добрый день!
Существует много заготовок и готовых примеров,
про то как читать, парзить и сохранять,
но с начала желательно уточнить постановку задачи.
Начнём с того, что таблицы бывают, где угодо, но только не в тестовых файлах.
Уточните, пожалуста, структуру данных в этом файле, а ещё лучше покажите образец.
В каком Excel-формате (CSV, XLS... ) нужно сохранить файл?
Удачи!


Я не ошибся. Исходные данные ИМЕННО в текстовом файле. Шаблон привожу в прикреплённом файле. Это выгрузка из городской программы.
А сохранить необходимо в формате XLS.
Читал о том что нужны для этого библиотеки, но пока до них я не дошёл. Нужно решить первую часть - спарсить.


Покажите, пожалуйста, образец файла, не его шаблон.
Если очень секретный СС документ, замените данные на хххх.
Чтобы спарсить, необходимо увидеть, какие символы разделители колонок
в таблице, и.т.д

Спасибо за внимание к моему вопросу. Сделаю.


Всем привет!
Файл я спарсил. Сформировал массив. В консоли получаю интересующий меня результат. Но ещё не умею (не нашёл подходящий пример) свойства объекта доставать и формировать строку из них, а не добавлять весь объект для того, что бы выгрузить в экселевский файл.
Код ниже:

console.log('---Табличная часть:---');
for (let i = 0; i < borrowerData.data.length; i++) {
console.log(borrowerData.data[i]);
}
console.log('---Массив в CSV---');
var Results = [
["date", "Dolg_nach", "Pokaz_nach", "Pokaz_kon", "Nachisl_Voda_M", "Nachisl_Voda_Grn", "Nachisl_Stoki_M", "Nachisl_Stoki_Grn", "Poliv_Sotki", "Poliv_Grn", "Lgoty_Voda", "Lgoty_Stoki", "Recount", "Payed", "Supsid", "K_oplate", "Dolg_Kon_Mes"]
//[borrowerData.data[i]],
];
Results.push(borrowerData.data);
//exportToCsv = function()
var CsvString = "";
Results.forEach(function (RowItem, RowIndex) {
RowItem.forEach(function (ColItem, ColIndex) {
CsvString += ColItem + ';';
});
//CsvString += "\r\n";
CsvString += /^[\+,-]+$/;
console.log(Results);
});
CsvString = "data:application/csv," + encodeURIComponent(CsvString);
var x = document.createElement("A");
x.setAttribute("href", CsvString);
x.setAttribute("download", "Borrower.csv");
document.body.appendChild(x);
x.click();
Rick_77 Отправлено: 12 Февраля, 2021 - 12:38:35 • Тема: Файл txt, загрузка, массив, выборка • Форум: Вопросы новичков

Ответов: 8
Просмотров: 717
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Граждане знающие.
Существует ли шаблон для решения такой задачи:
- текстовый файл, в нём заголовок (текстовая информация);
- далее заголовок таблицы;
- и данные в таблице (числа).
Необходимо выбрать этот текстовый файл, спарсить его и записать в массив числа, для последующего оперирования цифр, а после выгрузить данные в экселевский файл.
Вот такой вот запрос.

Добрый день!
Существует много заготовок и готовых примеров,
про то как читать, парзить и сохранять,
но с начала желательно уточнить постановку задачи.
Начнём с того, что таблицы бывают, где угодо, но только не в тестовых файлах.
Уточните, пожалуста, структуру данных в этом файле, а ещё лучше покажите образец.
В каком Excel-формате (CSV, XLS... ) нужно сохранить файл?
Удачи!


Я не ошибся. Исходные данные ИМЕННО в текстовом файле. Шаблон привожу в прикреплённом файле. Это выгрузка из городской программы.
А сохранить необходимо в формате XLS.
Читал о том что нужны для этого библиотеки, но пока до них я не дошёл. Нужно решить первую часть - спарсить.


Покажите, пожалуйста, образец файла, не его шаблон.
Если очень секретный СС документ, замените данные на хххх.
Чтобы спарсить, необходимо увидеть, какие символы разделители колонок
в таблице, и.т.д

Спасибо за внимание к моему вопросу. Сделаю.
Rick_77 Отправлено: 12 Февраля, 2021 - 11:56:36 • Тема: Файл txt, загрузка, массив, выборка • Форум: Вопросы новичков

Ответов: 8
Просмотров: 717
Vladimir Kheifets пишет:
Rick_77 пишет:
Vladimir Kheifets пишет:
Rick_77 пишет:
Граждане знающие.
Существует ли шаблон для решения такой задачи:
- текстовый файл, в нём заголовок (текстовая информация);
- далее заголовок таблицы;
- и данные в таблице (числа).
Необходимо выбрать этот текстовый файл, спарсить его и записать в массив числа, для последующего оперирования цифр, а после выгрузить данные в экселевский файл.
Вот такой вот запрос.

Добрый день!
Существует много заготовок и готовых примеров,
про то как читать, парзить и сохранять,
но с начала желательно уточнить постановку задачи.
Начнём с того, что таблицы бывают, где угодо, но только не в тестовых файлах.
Уточните, пожалуста, структуру данных в этом файле, а ещё лучше покажите образец.
В каком Excel-формате (CSV, XLS... ) нужно сохранить файл?
Удачи!


Я не ошибся. Исходные данные ИМЕННО в текстовом файле. Шаблон привожу в прикреплённом файле. Это выгрузка из городской программы.
А сохранить необходимо в формате XLS.
Читал о том что нужны для этого библиотеки, но пока до них я не дошёл. Нужно решить первую часть - спарсить.


Покажите, пожалуйста, образец файла, не его шаблон.
Если очень секретный СС документ, замените данные на хххх.
Чтобы спарсить, необходимо увидеть, какие символы разделители колонок
в таблице, и.т.д

Спасибо за внимание к моему вопросу. Сделаю.

Страниц (2): [1] 2 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB