Я пишу надстройку Firefox, которая хранит и открывает файлы, хранящиеся в базовом каталоге (каталог, который пользователь выбирает в качестве предпочтения).Я бы хотел, чтобы пользователю было проще скопировать этот каталог и перенести его на другой компьютер (возможно, переключение между OSX, Linux и Windows).
Первый способ, которым я решил сделать это, - это просто сохранитьчасть пути к файлу после базовой директории, и, если операционная система Windows, изменить все \ на /.Затем при использовании пути сохраненный путь объединяется с текущим базовым каталогом (после замены всех / на \, если операционная система Windows).
Это разумно или плохо?Если кто-то использовал \ в пути OSX (я думаю, что это возможно, но, возможно, эти косые черты - это какой-то другой символ, похожий на символ разделителя файлов \?), Это может привести к нежелательному поведению.Одна из альтернатив, о которой я подумал, - это использовать nsIFile и построить относительный путь, рекурсивно используя parent и leafName, чтобы выбрать каждое имя каталога и сохранить его в строку с чем-то вроде "" между ними, которую я затем мог бы заменить соответствующим разделителем пути.для операционной системы.Это кажется более надежным, чем мой первый метод, но, может быть, есть более простое, более стандартное решение?