Глюк в функции print с кириллицей

Автор Yakov, 15 октября 2013, 10:21

0 Пользователи и 1 гость просматривают эту тему.

Yakov

Сегодня в рассылке Apache привели такой пример неправильной работы функции print с кириллицей

Sub Main

Dim aLines()
aLines = Array(_
"Мой дядя самых честных правил,",_
"Когда не в шутку занемог,",_
"Он уважать себя заставил",_
"И лучше выдумать не мог.",_
"Его пример другим наука;",_
"Но, боже мой, какая скука",_
"С больным сидеть и день и ночь,",_
"Не отходя ни шагу прочь!",_
"Какое низкое коварство",_
"Полуживого забавлять,",_
"Ему подушки поправлять,",_
"Печально подносить лекарство,",_
"Вздыхать и думать про себя:",_
"Когда же черт возьмет тебя!" _
)

Dim n%
Dim s$
For n = 0 To Ubound(aLines)
    s = s + aLines(n) + Chr(13)
Next

MsgBox s, 0, "Пушкин, Евгений Онегин"

print s

End Sub

JohnSUN

Извини, маленькая поправка - слова "с кириллицей" лишние. Тот же тест с латиницей или спецсимволами даёт аналогичный результат.

Ну да, print в отличие от MsgBox действительно заикается спотыкается на переводе каретки... при выводе в окно... Но в файл-то пишет нормально :D
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

ALexey7ov

Проверял на LibreOffice 4.1.3.2 с его OOOBasic.
Результат такой: выводит подряд три окна вывода, причем первое и второе с одной строчкой, а третье,- со всем остальным.