PDA

Просмотр полной версии : Перенос строки


r0m1n
16.01.2013, 14:40
Передаю значение из Sql-поля типа text во flash-переменную типа String. нужно чтобы в конечном итоге значение из sql перенеслось на несколько строк(длинное предложение). пробовал прямо в самом sql использовать "/n" - в итоге отображается так же как написал - "первая часть предложения/n вторая часть предложения", спецсимвол не распознается.

Hauts
16.01.2013, 14:47
"\n" попробуйте.

r0m1n
16.01.2013, 16:57
извиняюсь, здесь неправильно написал, а в коде все верно, не в этом проблема

dimarik
16.01.2013, 17:29
Чем отображаете?

r0m1n
16.01.2013, 17:42
в смысле метод? addChild

dimarik
16.01.2013, 17:48
Ясно. Давайте с другой стороны зайдем.
Что здесь не так и почему оно у меня работает?
var t:TextField = new TextField();
t.width = 400;
addChild(t);
t.text = "пробовал прямо в самом sql использовать \n - в итоге отображается так же как написал";

пробовал прямо в самом sql использовать
- в итоге отображается так же как написал

r0m1n
16.01.2013, 18:31
var t:TextField = new TextField();
t.width = 400;
addChild(t);
t.text = textFromSql;
где textFromSql = "первая часть предложения\n вторая часть предложения". может что то с типом переменной. вроде как textFromSql:String объявил. как проверить?

iflamberg
16.01.2013, 19:23
Сделайте trace этого текста, что вам sql выдает. Скорее всего \n там хранится или esc-последовательностью или, как \\n, что нибудь в этом роде.

r0m1n
16.01.2013, 19:35
trace в консоль FlashBuilder'a выдает строку как есть: первая часть предложения\n вторая часть предложения.

Добавлено через 2 минуты
замечу также что изначально данные из sql сначала идут массивом, затем в этом массиве выбирается определенная пара ключ-значение, и само значение уже идет в переменную textFromSql.

iflamberg
16.01.2013, 19:43
ну, так именно:
trace ("hello\\nworld");
hello\nworld
trace ("hello\nworld");

hello
world

попробуйте

str=str.replace(/\\n/g,"\n");

я вообще не спец в регулярках, но вроде здесь все элементарно.

r0m1n
16.01.2013, 20:23
iflamberg, спасибо большое. сделал replace, как вы сказали - теперь все ок)