通过querystring传送特殊字符串出现的问题,跪求答案

问题描述

我用c语言读出一个文件的内容,然后组成url字符串,接着用函数打开对应的url,但是服务器端得到的数据被截断了,肯定是含有特殊字符,那我在c语言如何调用Server.UrlEncoding,代码如下:c语言:HANDLEhFile;hFile=CreateFile(TEXT("image.jpg"),GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);TCHARch[6000];DWORDdwReads,dwCount;ReadFile(hFile,ch,6000,&dwReads,NULL);ch[dwReads]=0;//文件数据末尾TCHAR*pch=ch;for(dwCount=512;dwCount<=dwReads;dwCount+=512){TCHARchURL[512]=TEXT("http://localhost/example/upload.asp?value=");memcpy(chURL+42,pch,512);ShellExecute(NULL,TEXT("open"),chURL,NULL,NULL,SW_SHOWNORMAL);pch+=256;}TCHARchURL[512]=TEXT("http://localhost/example/upload.asp?value=");memcpy(chURL+42,pch,dwReads+512-dwCount);ShellExecute(NULL,TEXT("open"),chURL,NULL,NULL,SW_SHOWNORMAL);asp代码:Dimvaluevalue=Request.QueryString("value")Response.Write(value)

解决方案

解决方案二:
要进行编码http://dev.csdn.net/article/49/49256.shtm
解决方案三:
CODE/*ReplaceescapesequencesinanURL(orapartofanURL)*//*workslikestrcpy(),butwithoutreturnargument*//*unescape_url_stringcomesfromASFRecorder*/voidurl_unescape_string(char*outbuf,constchar*inbuf){unsignedcharc;do{c=*inbuf++;if(c=='%'){unsignedcharc1=*inbuf++;unsignedcharc2=*inbuf++;if(((c1>='0'&&c1<='9')||(c1>='A'&&c1<='F'))&&((c2>='0'&&c2<='9')||(c2>='A'&&c2<='F'))){if(c1>='0'&&c1<='9')c1-='0';elsec1-='A'-10;if(c2>='0'&&c2<='9')c2-='0';elsec2-='A'-10;c=(c1<<4)+c2;}}*outbuf++=c;}while(c!='')输出c
解决方案四:
平时遇到这样的东西都是因为传了汉字而页的encoding="utf-8",改成gb2312这个就满足了楼主这个是传了特殊编码了,学习下
解决方案五:
web.Config文件加上<globalizationrequestEncoding="GB2312"responseEncoding="GB2312"uiCulture="zh-CN"culture="zh-CN"fileEncoding="GB2312"/>

时间: 2024-08-03 14:29:32

通过querystring传送特殊字符串出现的问题,跪求答案的相关文章

c语言-C语言课程设计字符串题目匹配单词,求大神~~~~~~~~~~~~~~~~~

问题描述 C语言课程设计字符串题目匹配单词,求大神~~~~~~~~~~~~~~~~~ 详细题目如下:设有n个单词的字典表(1<=n<=100),计算某单词在字典表中的4种匹配情况(字典中的单词和待匹配的单词长度上限为255):1)i :该单词在字典表中的序号:2)Ei:在字典表中仅有一个字符不匹配的单词不匹配的单词序号:3)Fi:在字典表中多(或少)一个字符(其余字符匹配)的单词序号:4)N:其他情况.当查找时有多个单词符合条件,仅要求第1个单词的序号即可.1)输入文件,文件格式为:n(字典表

跪求!急,在线等!!.netDES加密与javaDES加密出的字符串不同

问题描述 跪求!急,在线等!!.netDES加密与javaDES加密出的字符串不同 这是.net的DES加密 .net我不懂 这是java的 我敲的 但是二者加密出来的字符串不同 java解析出来的加密字符串是 e0pOfMet1ZnYMUAaIjk6lg== .net解析出来的是 esUrgcoeel8amhhplZX2MQ== 我java的那个步骤错了吗? 为什么俩者解析出来的字符串不同!谢谢大神!! 囧 解决方案 .net你用的是asiic编码,你确认java使用asiic编码吗 解决方案

调用带参类的带参方法- 如何把字符串转换成用字符串显示的字符类型 求帮助!

问题描述 如何把字符串转换成用字符串显示的字符类型 求帮助! private String[] colName = null; // 列名数组private String[] colType = null; //存放数据类型private String[] colValue = null; // 列植 这里有三个数组是从数据库中读取这些数据 然后将这些数据转换成一个对象 老师留的仿hibernate的根据主键获取对象的方法 我知道要用类反射做 可是怎么用就不太明白了 我写了这么个代码 Class

字符串指定位读取,求大神

问题描述 字符串指定位读取,求大神 对一段字符串的指定位数进行读取,字符串由数字组成,可以通过每一位上的字符读出其代表的意思,最好可以用到Cstring 解决方案 CString str = "1234567"; CString Left( int nCount ) const;//返回的字符串是前nCount个字符. CString Mid( int nFirst ) const; CString Mid( int nFirst, int nCount ) const;//nCoun

net-C++ 字节码转换成字符串怎么做呢?求大神!

问题描述 C++ 字节码转换成字符串怎么做呢?求大神! 请问字节码:E4 BD A0 E5 A5 BD E5 91 80 00 72 69 6E 67 3A 20 64 69 73 61 62 6C 65 64 怎么样转换成:"你好呀"这个字符串 类似于.net 中的System.Text.Encoding.GetEncoding()方法. 在.net C#中可以转换! 解决方案 wchar_t temp[100];wchar_t src[100];strncpy(src (LPCTS

命令行参数-C语言 字符串数组处理,50B,急求

问题描述 C语言 字符串数组处理,50B,急求 1.我想写一个程序:(C) 给定一个字符串"test" 生成一个字符串数组,元素分别为"test1","test2""test3""test4".(用for循环,元素数量可变) 2.为什么我程序在把命令行传入的参数赋值给一个字符串变量后,其余的字符串变量都变成了这个参数值?比如: tx[0]="KU"; printf("t1===

代码-以下字符串是怎么连接的,求解释

问题描述 以下字符串是怎么连接的,求解释 //program 6.4 joining strings #define STDC_WANT_LIB_EXT1 1 #include #include int main(void) { char preamble[] = "the joke is:nn"; char str[][40] = { "My dog hasn't got any nose.n", "How does your dog smell the

跪求字符串的问题

问题描述 要对字符串进行操作要求是这样的:Stringformual="a+b-c-d+e+f-g";得到的结果是这样加号存放一个数组:减号存放一个数组中:跪求高人 解决方案 解决方案二:在线等待跪求高人解决方案三:String[]split(Stringregex);//以regex为标志分割成数组包括:String[]split(Stringregex,intlimit);//limit为数组长度,多出部分并入最后一个元素如:Stringstr="a,b,c,d,e,f,

小女子跪求大神帮忙~关于json字符串转换成实体类。。

问题描述 求实例比如说我现在的json字符串是[{"name":"aa","passwd":"bb"},{"name":"aa2","passwd":"bb2"},...],我需要把它转存到javaBean中,但是我在并不知道接受的JSON字符串的内容中name和passwd的先后位置(因为我做的是socket传输json格式的数据,并且其中的数据