Adobe Flash FileReference Сохранить метод - сохранить как тип файла в Windows 7

Я использую FileReference.save, чтобы сохранить JPG на компьютер пользователя. В Windows 7 я передаю 'test.jpg' в качестве имени файла для сохранения, но в диалоге сохранения файла отображается только 'test' ('test.jpg' отображается в качестве имени файла в Windows Vista). Таким образом, если пользователь вручную не добавляет расширение.jpg, Windows 7 не знает, что это файл JPEG, поскольку он просто сохраняется как "тест". Я хотел бы иметь возможность передать расширение.jpg для пользователя, но Windows 7, похоже, удаляет расширение файла из имени файла, которое передается в диалог сохранения файла.

fr = new FileReference();
fr.save(imgByteArray, 'test.jpg');

1 ответ

Решение

Хорошо, проблема в том, что ОС скрывает от вас расширения. Починить это:

  1. Нажмите Пуск Меню
  2. Нажмите Мой компьютер
  3. Когда окно моего компьютера сфокусировано (нажмите на него, чтобы убедиться), нажмите клавишу Alt, и вы получите меню старого стиля.
  4. Нажмите меню " Сервис", перейдите в " Параметры папки"...
  5. В появившемся окне нажмите на вторую вкладку вверху, которая называется View.
  6. В списке флажков внизу снимите флажок Скрыть расширение для известных типов файлов.
  7. Хит ОК
  8. Запустите вашу программу Flex снова

В качестве альтернативы шагам 1 и 2 вы можете нажать WinKey+E, чтобы открыть окно проводника.

Yay для технического письма 101.

Когда вы выполняете действие сохранения, просмотра или загрузки, открытое диалоговое окно зависит от ОС и поэтому обрабатывается с настройками, примененными к ОС пользователем. Если вы находитесь в контексте AIR, вы можете сохранить напрямую без диалогов, используя класс FileStream.

Другие вопросы по тегам