Сплит файл текстовый угловой - PullRequest
0 голосов
/ 30 мая 2019

У меня есть это:

export class LeerArchivoComponent implements OnInit {
      private fileText;
      private nombre:String;
      constructor() { }

      ngOnInit() {
      }

      fileUpload(event){
        var reader = new FileReader();
        reader.readAsText(event.srcElement.files[0]);
        var me = this;
        var nombre:String;
        reader.onload = function (){
          me.fileText = reader.result;     

        }         

}

И вот это:

<input id="file-upload" 
   type="file" 
   accept=".txt" 
   (change)="fileUpload($event)">     
<textarea rows="4" cols="50">{{fileText}}</textarea>

То есть читать текстовый файл.У меня есть текстовый файл, например:

"u901_humext  ""2019-02-10 00:00""    99.97   99.97   99.97"

"u901_radpar   ""2019-02-10 15:40""    1002.9  1068.4  1034.3943396226"

Проблема в том, что я хочу разделить его на пробелы, "и" ". Как я могу это сделать? Спасибо. Я использую Angular.

Ответы [ 2 ]

0 голосов
/ 30 мая 2019

вы можете использовать .split () string.split ([separator]) разделитель указывает символ, используемый для разделения строки.

0 голосов
/ 30 мая 2019

Поскольку синтаксический анализ csvs может быть довольно проблематичным время от времени. Они используют пробелы или табуляции. содержит ли файл разделители текста или нет. Существуют ли какие-либо особые сценарии форматирования, которые необходимо учитывать.

Возможно, я бы использовал библиотеку, чтобы не изобретать велосипед.

https://github.com/okfn/csv.js/

В качестве входных данных используется блоб, поэтому загруженный вами файл можно просто передать в него.

и вы получите этот хороший объект обратно

{
  // an array of arrays - one array each row in the CSV
  // (excluding header row - i.e. first row)
  records: [ [...], [...], ... ],
  // list of fields
  fields: [ 'field-name-1', 'field-name-2', ... ],
  metadata: { may be some metadata e.g. file name }
}

Может ли это быть вашим решением?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...