дата excel, отображающая разные форматы на разных компьютерах

#coldfusion #lucee

Вопрос:

Я использую значение spreadsheetformatcell для ввода даты в excel следующим образом

 <cfset spreadsheetSetCellValue(objxls, "#datecreated#", 2,1,"Date")>
 

это работает, но я кое-что заметил, у меня две машины, и на одной машине дата отображается как: 02-19-2021

и в других excel это показывает 19/02/2021

что я заметил, так это то, что он, похоже, использует языковой стандарт, указанный в окнах. как я могу заставить использовать формат dd/mm/yyyy на всех компьютерах, независимо от локали

могу ли я использовать что-то в ColdFusion, чтобы это сработало..

Спасибо

Комментарии:

1. Это зависит от того, что пользователи должны иметь возможность делать с данными, как только они окажутся в Excel. Если им нужно выполнить какие-либо функции даты, ничего не делайте. Если им просто придется взглянуть на это, то ответ Адриана сработает.

2. ..how can i force to use the format of dd/mm/yyyy... Я думаю, вы ответили на свой собственный вопрос: т. е. примените формат . Похоже, что код этого не делает, поэтому в итоге вы получаете значение по умолчанию, которое зависит от машины и локали.

3. Какую версию ColdFusion, JDK и ОС вы используете?

4. я-coldfusion 2016, windows и jdk, я не

Ответ №1:

Вы должны быть в состоянии просто отформатировать дату.

 <cfset spreadsheetSetCellValue(objxls, "#dateFormat(datecreated, 'dd/mm/yyyy')#", 2,1,"Date")>
 

Комментарии:

1. хорошо, я попробовал, но проблема все еще в том, что если открывается на другом компьютере, то отображается дата в формате мм-дд-гггг

2. Добавьте одинарную кавычку к отформатированной дате.

3. Форматирование не будет работать при использовании типа данных «дата», так как CF просто анализирует значение обратно в объект даты перед заполнением ячейки. Что касается отображения, похоже, что CF использует один из форматов даты, определенных для конкретной локали , по умолчанию для ячеек «дата». Применение электронных таблиц(…) с правильным форматом даты должно работать

4. Что ж, каждый день узнавайте что-то новое… По какой-то причине это , похоже, работает. Хотя совершенно не представляю, почему. Придется еще покопаться в черной магии Adobe и посмотреть, работает ли она также с другими языковыми настройками 😉