Я знаю функции QuotedStr
, но есть аналогичная функция для двойной процитировать, напримерВ Delphi есть функция двойной кавычки?
for i := 0 to List.count - 1 do
begin
List[i] := DoubleQuotedStr(List[i]);
end;
Я знаю функции QuotedStr
, но есть аналогичная функция для двойной процитировать, напримерВ Delphi есть функция двойной кавычки?
for i := 0 to List.count - 1 do
begin
List[i] := DoubleQuotedStr(List[i]);
end;
Вы можете использовать AnsiQuotedStr
, который принимает кавычку:
List[i] := AnsiQuotedStr(List[i], '"');
Из documentation:
function AnsiQuotedStr(const S: string; Quote: Char): string;
... .
Используйте AnsiQuotedStr для преобразования строки (S) в строку с кавычками, используя предоставленный символ Quote. Символ предложения вставляется в начале и в конце S, и каждый символ котировки в строке удваивается.
Правильно ли это поддерживает Unicode? Кажется, это работает в моем ограниченном тестировании, но может ли байт кодовой точки неправильно интерпретироваться как двойная кавычка? – Alister
Да, он поддерживает Unicode. Именование путается, но префикс Ansi означает, что он знает локаль. Это не особенно актуально для этой конкретной функции. Здесь нет байтов. Это UTF-16. Это два байта на элемент символа. Либо один, либо два символьных элемента на кодовую точку. –
Например, прочитайте принятый ответ здесь: http://stackoverflow.com/questions/23444579/why-ansisametext-is-not-ansi –
Поиск. Если он существует, он находится в одном и том же месте. Если нет, писать не сложно. –