我需要解析查询字符串: ?artist=singer1 & singer2&song=name song
HttpUtility.ParseQueryString如果值包含像"singer1&singer2"这样的&符号,则静态方法无法按我想要的方式工作.
例如:
string qs = "?artist=singer1 & singer2&song=name song";
NameValueCollection query = HttpUtility.ParseQueryString(qs);
Run Code Online (Sandbox Code Playgroud)
结果是:
- artist = singer1
- null =歌手2
- 歌=名歌
我想结果
artist = singer 1 & singer2
song = name song
Run Code Online (Sandbox Code Playgroud)
任何的想法?
我正在处理从无人管理的本机库到我的托管C#代码的回调.回调函数在头文件中声明:
typedef void* (TNotice)(wchar_t *msg, bool error);
Run Code Online (Sandbox Code Playgroud)
回调有字符串参数msg.I不要khow,为什么在c#中不起作用声明:
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate IntPtr CallbackDelegate([MarshalAs(UnmanagedType.LPWStr)]string msg, bool error);
Run Code Online (Sandbox Code Playgroud)
但声明:
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate IntPtr CallbackDelegate([MarshalAs(UnmanagedType.LPWStr)]StringBuilder msg, bool error);
Run Code Online (Sandbox Code Playgroud)
工作良好.
c# ×2