Пути со специальными символами

У меня есть .mo файл с CombiTimeTable, которому нужен доступ к .txt файлу, расположенному на пути со специальными символами (датский 'æøå'). И .mo файл, и .txt файл можно найти здесь:

Согласно Notepad ++, оба файла закодированы как UTF-8, а текстовое представление Dymola указывает, что специальный символ 'æ' в пути выглядит нормально:

введите здесь описание изображения

Однако, когда я пытаюсь смоделировать модель, я получаю ошибку пути, указывающую на то, что Димола интерпретирует «æ» по-разному.

введите здесь описание изображения

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


person Rene Just Nielsen    schedule 07.12.2018    source источник
comment
txtfile.txt недоступен на вашем диске Google.   -  person tbeu    schedule 10.12.2018
comment
Tbeu. Ссылка исправлена. Спасибо   -  person Rene Just Nielsen    schedule 10.12.2018


Ответы (2)


Реализация таблицы является частью MSL, а реализация C не поддерживает пути UTF-8: https://github.com/modelica/ModelicaStandardLibrary/blob/master/Modelica/Resources/C-Sources/ModelicaIO.c#L653.

Возможно, вы сможете использовать mklink для создания ссылки на этот каталог, не содержащей специальных символов.

person Adrian Pop    schedule 07.12.2018
comment
Адриан, спасибо за быстрый ответ. Знаете ли вы, есть ли какие-либо планы на будущее по поддержке имен файлов со специальными символами в MSL? В противном случае я думаю, что поищу другие библиотеки Modelica, которые могут вводить мои внешние данные в модель. BR. Рене - person Rene Just Nielsen; 07.12.2018
comment
Вы можете открыть заявку на MSL на github с этой проблемой. В зависимости от доступных ресурсов это можно быстро исправить. - person Adrian Pop; 07.12.2018
comment
Хорошая новость в том, что у Dymola есть версия для Linux. У интерфейса C в Linux нет проблем с UTF-8, о которых я знаю. В противном случае я бы просто использовал mklink, как предложил Адриан: создает путь без символов Unicode, чтобы приложения C, не использующие специфичные для Windows файловые функции, могли работать правильно. - person sjoelund.se; 08.12.2018

Это известная проблема спецификации языка Modelica, но в настоящее время она не решена: https://github.com/modelica/ModelicaSpecification/issues/136#issuecomment-435584685

person tbeu    schedule 10.12.2018