Ответ 1
В вашей строке используйте Trim с параметром "as char:
.Trim('"')
Пожалуйста, простите мою лень. Я мог бы понять это, читая, я знаю, но я думал, что дам одному из вас гениев С# шанс выиграть какой-нибудь реп.
У меня есть файл данных в формате INI, таком как формат, который должен быть прочитан как некоторым кодом C, так и некоторым кодом С#. Код C ожидает, что строковые значения будут окружены кавычками. С# эквивалентный код использует некоторый базовый класс или что-то, что я не контролирую, но в основном он включает кавычки как часть выходной строки. То есть содержимое файла данных
MY_VAL="Hello World!"
дает мне
"Hello World!"
в моей строке С#, когда мне действительно нужно содержать
Hello World!
Как я условно (при наличии первого и последнего символа является) удаляет кавычки и получает содержимое строки, которое я хочу.
Большое спасибо.
В вашей строке используйте Trim с параметром "as char:
.Trim('"')
Я обычно называю String.Trim() для этой цели:
string source = "\"Hello World!\"";
string unquoted = source.Trim('"');
Моя реализация показывает, что кавычки с обеих сторон
public string UnquoteString(string str)
{
if (String.IsNullOrEmpty(str))
return str;
int length = str.Length;
if (length > 1 && str[0] == '\"' && str[length - 1] == '\"')
str = str.Substring(1, length - 2);
return str;
}
Просто возьмите возвращаемую строку и сделайте Trim('"');
Я бы предложил использовать метод replace().
string str = "\"HelloWorld\"";
string result = str.replace("\"", string.Empty);
Будучи навязчивым, здесь (что я, никаких комментариев о вас), вы можете рассмотреть
.Trim(' ').Trim('"').Trim(' ')
так что любые, ограничивающие пробелы вне кавычки строки обрезаются, тогда кавычки удаляются и, наконец, удаляются любые ограничивающие пространства для содержащейся строки.
Если вы знаете, что всегда будет "в конце и в начале, это будет самый быстрый способ".
s = s.Substring(1, s.Length - 2);
Используйте функцию замены строки или функцию обрезки. Если вы хотите удалить первую и последнюю кавычки, используйте функцию подстроки.
string myworld = "\"Hello World!\"";
string start = myworld.Substring(1, (myworld.Length - 2));