Специальные символы \ n и \ r на Android

1

Я разрабатываю приложение Android 2.2.

Я использую SQlite3 для хранения некоторого текста, который будет отображаться внутри TextView.

Я хочу добавить новую строку и возврат каретки к этому тексту, но я не знаю, могу ли я использовать '\n' и '\ r' внутри SQlite3.

Любые советы?

  • 1
    Я вообще не знаю SQlite, но обычно база данных хранит действительные символы, и преобразование \n или \r происходит во время компиляции при использовании строковых литералов. То, что использовать, будет зависеть от вашего языка и компилятора, а не от хранилища данных.
  • 0
    @Kendrick: Кендрик: так, я могу использовать это, не так ли?
Теги:
sqlite3

2 ответа

2
Лучший ответ

Если вы правильно используете SQLite API и используете параметры привязки, а не динамически генерируете SQL, вы можете без проблем использовать эти символы.

База данных, скорее всего, просто кодирует символы в куски байтов с какой-либо кодировкой символов, так что факт, что 00001010 означает "новая строка" в некоторых контекстах, когда декодируется с большинством наборов символов, совершенно не имеет значения. Он входит в текстовый столбец, как и все остальное.

Теперь, если вы не используете подготовленные операторы, но вместо этого программный программный генератор SQL, вы можете столкнуться с проблемами в зависимости от того, как SQLite обрабатывает встроенные прерывания строк в строковых литералах (он может или не может справиться с этим штрафом). Но это не должно быть проблемой, потому что вы можете обойти это в любом случае (даже если вам нужно динамически генерировать ваши заявления, просто сгенерируйте оператор с помощью ? заполнителей, подготовьте его, а затем привяжите переменные).

  • 0
    +1 Обязательный параметр с заявлениями это путь. Это должно обрабатывать детали более низкого уровня (такие как этот) для вас.
0

Вы пытались сбежать от них? \\n, \\r

Ещё вопросы

Сообщество Overcoder
Наверх
Меню