Функция write.xlsx дает ошибку при определении пути с именем файла, но read.xlsx в порядке

У меня проблема с функцией write.xlsx2 пакета xlsx R. Например, см. Код ниже.

main_path<-"~/mydir/"
read.xlsx2(paste0(main_path,"my_input_excel.xlsx"), sheetIndex=1)
a<-1
write.xlsx2(a, paste0(main_path,"my_output_excel.xlsx"), sheetName="Sheet1", col.names=TRUE, row.names=FALSE, append=FALSE)

Функция read.xlsx2 работает нормально, функция write.xlsx2 дает ошибку

Ошибка в .jnew("java/io/FileOutputStream", jFile):
java.io.FileNotFoundException:/mydir/my_output_excel.xlsx(Нет таких файл или каталог)

Когда я удаляю часть paste0 и записываю только имя файла, все будет хорошо. Поэтому проблема заключается в определении пути.

p.s Мне интересно, возможно, write.xlsx игнорирует тильду ~, поэтому определение пути становится мусором.

Ответ 1

Замена "~/" на "Пользователи//" работает для Mac (возможно, для Linux тоже). Хотя, это все еще ускользает от меня, как read.xlsx и write.xlsx могут отличаться таким фундаментальным способом.