VB.NET将查询字符串解析为数组 [英] VB.NET Parse Query String to Array
本文介绍了VB.NET将查询字符串解析为数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这个字符串:
1=True&2=150+minutes&3=True&4=True&5=Continuing+to+smoke
如何将其放入这样的数组或对象中:
How can I get it into an array or object like this:
[1] => True
[2] => "150 minutes"
etc?
我已经尝试过了:
<HttpPost()>
Function GetQuizScore(ByVal data As String) As JsonResult
'Debug.Print(data)
Dim jss = New JavaScriptSerializer
Dim dict = jss.Deserialize(Of List(Of String))(data)
Debug.Print(String.Join(", ", dict))
Return Json(data)
End Function
但是,这给了我一个错误:
But, it gives me an error that says:
无效的JSON原语: True& 2 = 150 +分钟& 3 = True& 4 = True& 5 =继续+来+抽烟.
Invalid JSON primitive: True&2=150+minutes&3=True&4=True&5=Continuing+to+smoke.
感谢您的帮助.
推荐答案
您拥有的字符串是 QueryString ,而不是JSON字符串.因此,您可以使用
The string you have is a QueryString, not a JSON string. Thus, you can use
将其转换为NameValueCollection.
to convert it into a NameValueCollection.
示例:
Dim s = "1=True&2=150+minutes&3=True&4=True&5=Continuing+to+smoke"
Dim parsed = HttpUtility.ParseQueryString(s)
For Each key In parsed
Console.WriteLine(key & ": " & parsed(key))
Next
输出:
1: True
2: 150 minutes
3: True
4: True
5: Continuing to smoke
这篇关于VB.NET将查询字符串解析为数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文