Поделиться через


Текстовый или CSV-файл

Итоги

Позиция Description
Состояние выпуска Общая доступность
Продукты Excel
Power BI (семантические модели)
Power BI (потоки данных)
Fabric (Dataflow 2-го поколения)
Power Apps (потоки данных)
Dynamics 365 Customer Insights
Службы Analysis Services
Справочная документация по функциям File.Contents
Lines.FromBinary
Csv.Document

Примечание.

Некоторые возможности могут присутствовать в одном продукте, но не другие из-за расписаний развертывания и возможностей для конкретного узла.

Поддерживаемые возможности

  • Import

Подключение в локальный текстовый или CSV-файл из Power Query Desktop

Чтобы загрузить локальный текст или CSV-файл, выполните приведенные действия.

  1. Выберите параметр "Текст или CSV" в разделе "Получить данные". Это действие запускает локальный браузер файлов, где можно выбрать текстовый файл.

    Выбор текстового файла.

    Чтобы открыть файл, выберите Открыть.

  2. В навигаторе можно преобразовать данные в Редактор Power Query, выбрав "Преобразовать данные" или загрузить данные, выбрав "Загрузка".

    Текст в навигаторе.

Подключение в текстовый или CSV-файл из Power Query Online

Чтобы загрузить локальный текст или CSV-файл, выполните приведенные действия.

  1. На странице источников данных выберите текст или CSV.

  2. В параметрах Подключение ion введите путь к нужному локальному тексту или CSV-файлу.

    Выбор текстового файла в сети.

  3. Выберите локальный шлюз данных из шлюза данных.

  4. Ввод имени пользователя и пароля

  5. Выберите Далее.

  6. В навигаторе выберите "Преобразовать данные", чтобы начать преобразование данных в Редактор Power Query.

    Преобразовать данные.

Загрузка из Интернета

Чтобы загрузить текстовый или CSV-файл из Интернета, выберите веб-соединитель, введите веб-адрес файла и следуйте любым запросам учетных данных.

Разделители текста и CSV

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

Неструктурированный текст

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

Hello world.
This is sample data.

При загрузке отображается экран навигации, который загружает каждую из этих строк в собственную строку.

Загрузка данных из простого неструктурированного текстового файла.

В этом диалоговом окне можно настроить только одну вещь, которая является раскрывающимся списком "Источник файла". В этом раскрывающемся списке можно выбрать , какой набор символов использовался для создания файла. В настоящее время набор символов не выводится, и UTF-8 будет выводиться только в том случае, если он начинается с BOM UTF-8.

Выбор языка и региональных параметров файла для text/CSV.

CSV

Пример CSV-файла можно найти здесь.

Помимо источника файла CSV также поддерживает указание разделителя и способ обработки обнаружения типов данных.

Загрузка данных из CSV-файла.

Доступные разделители включают двоеточие, запятую, знак равенства, точку с запятой, пробел, вкладку, настраиваемый разделитель (который может быть любой строкой), а также фиксированную ширину (разбиение текста по стандартному числу символов).

Выбор разделителя для CSV-файла.

Последний раскрывающийся список позволяет выбрать способ обработки обнаружения типов данных. Это можно сделать на основе первых 200 строк, в целом наборе данных или вы можете не выполнять автоматическое обнаружение типов данных и вместо этого позволить всем столбцам по умолчанию "Текст". Предупреждение. Если вы делаете это во всем наборе данных, это может привести к замедлению начальной загрузки данных в редакторе.

Выбор типа данных для CSV-файла.

Так как вывод может быть неверным, перед загрузкой стоит дважды проверка параметры проверка.

Структурированный текст

Когда Power Query может обнаружить структуру текстового файла, он будет рассматривать текстовый файл как файл разделителя, разделенный разделителем, и дает те же параметры, что и при открытии CSV-файла, который, по сути, является файлом с расширением, указывающим тип разделителя.

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

Column 1	Column 2	Column 3
This is a string.	1	ABC123
This is also a string.	2	DEF456

Загрузка данных из структурированного текстового файла.

Это можно использовать для любого другого файла на основе разделителей.

Редактирование источника

При редактировании исходного шага вы увидите немного другое диалоговое окно, чем при первоначальной загрузке. В зависимости от того, как вы в настоящее время рассматриваете файл как (то есть текст или csv), вы будете представлены с экраном с различными раскрывающимися списками.

Изменение исходного шага запроса, доступного к CSV-файлу.

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

Изменение стиля разрыва строки для CSV-файла.

Например, если изменить приведенный выше пример структурированного, можно добавить разрыв строки.

Column 1	Column 2	Column 3
This is a string.	1	"ABC
123"
This is also a string.	2	"DEF456"

Если для разрывов строк задано значение "Игнорировать процитированные разрывы строк", он будет загружаться так, как если бы не было разрыва строки (с дополнительным пробелом).

Загрузка CSV-файла с разрывами строк с кавычками игнорируется.

Если для разрывов строк задано значение "Применить все разрывы строк", она загружает дополнительную строку, при этом содержимое после разрывов строк является единственным содержимым в этой строке (точные выходные данные могут зависеть от структуры содержимого файла).

Загрузка CSV-файла с примененными разрывами строк с кавычками.

В раскрывающемся списке "Открыть файл" вы сможете изменить нужный файл как важный для устранения неполадок. Для структурированных файлов, которые технически не являются CSV (например, файл с разделительной вкладкой, сохраненный в виде текстового файла), необходимо по-прежнему иметь открытый файл в формате CSV. Этот параметр также определяет, какие раскрывающиеся списки доступны в остальной части диалогового окна.

Изменение типа файла.

Текст/CSV по примеру

Пример текста и CSV в Power Query — это общедоступная функция в Power BI Desktop и Power Query Online. При использовании соединителя Text/CSV вы увидите параметр извлечения таблицы с помощью примеров в левом нижнем углу навигатора.

Использование параметра

При выборе этой кнопки вы перейдете на страницу "Извлечение таблицы с помощью примеров ". На этой странице вы указываете пример выходных значений для данных, которые вы хотите извлечь из текстового или CSV-файла. После ввода первой ячейки столбца другие ячейки в столбце заполняются. Чтобы данные были извлечены правильно, может потребоваться ввести несколько ячеек в столбце. Если некоторые ячейки в столбце неверны, можно исправить первую неправильную ячейку, а данные будут извлечены снова. Проверьте данные в первых нескольких ячейках, чтобы убедиться, что данные были извлечены успешно.

Примечание.

Рекомендуется ввести примеры в порядке столбца. После успешного заполнения столбца создайте новый столбец и начните вводить примеры в новом столбце.

Укажите пример выходных значений для извлечения данных.

После завершения создания этой таблицы можно выбрать для загрузки или преобразования данных. Обратите внимание, что результирующие запросы содержат подробный анализ всех шагов, которые были выведены для извлечения данных. Эти шаги — это просто обычные шаги запроса, которые можно настроить по мере необходимости.

Подробные сведения о шагах по извлечению данных.

Устранение неполадок

Загрузка файлов из Интернета

Если вы запрашиваете текстовые и csv-файлы из Интернета, а также продвигаете заголовки, и вы извлекаете достаточно файлов, которые вам нужно беспокоиться о потенциальном регулировании, следует рассмотреть возможность упаковки Web.Contents звонка.Binary.Buffer() В этом случае буферизация файла перед продвижением заголовков приведет к тому, что файл запрашивается только один раз.

Работа с большими CSV-файлами

Если вы работаете с большими CSV-файлами в редакторе Power Query Online, может появиться внутренняя ошибка. Мы рекомендуем сначала работать с CSV-файлом меньшего размера, применить шаги в редакторе, а после завершения измените путь к большему CSV-файлу. Этот метод позволяет эффективнее работать и снижает вероятность возникновения времени ожидания в интерактивном редакторе. Мы не ожидаем, что вы столкнулись с этой ошибкой во время обновления, так как мы разрешаем более длительное время ожидания.

Неструктурированный текст интерпретируется как структурированный

В редких случаях документ с похожими числами запятых в абзацах может быть интерпретирован как CSV-файл. Если эта проблема возникает, измените шаг источника в редакторе Power Query и выберите текствместо CSV в раскрывающемся списке "Открыть файл как".

Столбцы в Power BI Desktop

При импорте CSV-файла Power BI Desktop создает столбцы=x (где x — количество столбцов в CSV-файле во время первоначального импорта) в качестве шага в Редактор Power Query. При добавлении дополнительных столбцов и источнике данных устанавливается обновление, все столбцы за пределами начального количества столбцов не обновляются.

Ошибка: Подключение ion закрыт узлом

При загрузке текстовых и CSV-файлов из веб-источника и продвижении заголовков иногда возникают следующие ошибки: "An existing connection was forcibly closed by the remote host" или "Received an unexpected EOF or 0 bytes from the transport stream." эти ошибки могут быть вызваны узлом, использующими защитные меры и закрывая подключение, которое может быть временно приостановлено, например при ожидании другого подключения к источнику данных для операции соединения или добавления. Чтобы обойти эти ошибки, попробуйте добавить вызов Binary.Buffer (рекомендуется) или Table.Buffer , который скачивает файл, загружает его в память и немедленно закрывает подключение. Это должно предотвратить приостановку при скачивании и принудительно закрыть соединение перед получением содержимого.

В следующем примере показано это обходное решение. Перед передачей результирующей таблицы в Table.PromoteHeaders необходимо выполнить эту буферизацию.

  • Исходный код:
Csv.Document(Web.Contents("https://.../MyFile.csv"))
  • С:Binary.Buffer
Csv.Document(Binary.Buffer(Web.Contents("https://.../MyFile.csv")))
  • С:Table.Buffer
Table.Buffer(Csv.Document(Web.Contents("https://.../MyFile.csv")))