Ответ 1
Возможно, будет работать несколько методов.
1) Сериализуйте строку [] в JSON
Это было бы довольно легко в .NET с использованием класса JavaScriptSerializer
и избежать проблем с символами-разделителями. Что-то вроде:
String[] myValues = new String[] { "Red", "Blue", "Green" };
string json = new JavaScriptSerializer().Serialize(myValues);
2) Придумайте разделитель, который никогда не появляется в строках
Разделите каждую строку символом типа |||
, который никогда не появится в строке. Вы можете использовать String.Join()
для создания этой строки. Что-то вроде:
String[] myValues = new String[] { "Red", "Blue", "Green" };
string str = String.Join("|||", myValues);
И затем перестройте его так:
myValues = str.Split(new string[] { "|||" }, StringSplitOptions.RemoveEmptyEntries);
Это может быть лучшим вариантом, если вы можете доверять своим вводам, например, серии номеров заранее определенных вариантов. В противном случае вы, вероятно, захотите проверить свои строки ввода, чтобы убедиться, что они не содержат этот разделитель, если вы хотите быть очень безопасным. Вы могли бы использовать HttpUtility.HtmlEncode()
, чтобы сначала вывести каждую строку.