Как отсортировать словарь по массиву? - PullRequest
1 голос
/ 13 июля 2020

Я получаю метаданные PDF с помощью itextsharp следующим образом:

var pdf = new PdfReader(__PDF_PATH__);
var main = new[] { "Title", "Subject", "Creator", "Author", "Producer", "Keywords", "ModDate", "CreationDate" };
var metadatas = pdf.Info; // returns Dictionary<string, string> metadatas

Ключи словаря такие же, как в массиве main. Я хочу отсортировать ключи словаря в соответствии с заданным массивом main. Но я не справился.

Ответы [ 2 ]

0 голосов
/ 14 июля 2020

Как уже упоминали другие люди, Словарь не имеет порядка, и вы не можете его отсортировать.

В зависимости от того, что вы хотите делать со своим metadatas словарем, вы можно использовать массив main для копирования данных в другую структуру данных, например SortedDictionary , SortedList или List<List<string>.

0 голосов
/ 13 июля 2020

, вы можете посмотреть этот ответ здесь: Сортировка словаря по ключам

или вы можете посмотреть на этот подход здесь: https://www.dotnetperls.com/sort-dictionary

но в основном вы не можете сделать это в словаре. вы можете преобразовать в другую структуру данных.

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