Unity: «Не удалось найти данные кодировки 1252» при загрузке файла DXF в сборку (моно, а не IL2CPP)C#

Место общения программистов C#
Ответить
Anonymous
 Unity: «Не удалось найти данные кодировки 1252» при загрузке файла DXF в сборку (моно, а не IL2CPP)

Сообщение Anonymous »

Я работаю над проектом Unity, в котором мне нужно асинхронно загрузить файл DXF с помощью C#. Я использую Mono в качестве серверной части сценариев (не IL2CPP). Загрузка DXF отлично работает в редакторе Unity, но когда я запускаю сборку, я получаю следующую ошибку:

Не удалось найти данные в кодировке 1252. Убедитесь, что у вас установлена ​​и включена правильная международная сборка кодового набора в сборке exe, созданной в Unity.

Вот упрощенная версия кода, который я использую. :
private async Task LoadDxfFileAsync(string path, Vector3 position)
{
loadingPanel.SetActive(true);
statusText.text = "Loading...";

DxfFile dxf = null;

try
{
dxf = await Task.Run(() =>
{
if (!File.Exists(path))
{
throw new FileNotFoundException($"DXF file not found: {path}");
}

#if UNITY_EDITOR
return DxfFile.Load(path); // Directly load in editor
#else
return DxfFile.Load(path, Encoding.GetEncoding(1252)); // Register the code page
#endif
});
}
catch (Exception ex)
{
loadingPanel.SetActive(false);
statusText.text = $"Error loading DXF: {ex.Message}";
Debug.LogError($"Error loading DXF: {ex.Message}");
return;
}

// Process DXF entities on the main thread...

loadingPanel.SetActive(false);
}
< /code>
Что я пробовал: < /p>
  • Я позаботился о том, чтобы моно выбрано в качестве бэкэнда сценариев в Unity. < / li>
    Я пробовал добавить System.Text.Encoding.CodePages, но ошибка не устранена.
  • Файл DXF отлично загружается в редакторе, но при сборке происходит сбой. .
Вопросы:

[*]Почему эта ошибка появляется только при сборке и нет в редакторе?
[*]Как правильно включить или прописать нужную кодировку (кодовая страница 1252), чтобы она работала в сборке?

Будем благодарны за любую помощь!

Подробнее здесь: https://stackoverflow.com/questions/791 ... in-build-m
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»