php 将中文转换为GBK编码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 将中文转换为GBK编码相关的知识,希望对你有一定的参考价值。

我站用php写的,要与另一个站点ASP写的,进行GET方式通信,我网页是uft-8编码,对方是接收参数的网页是GB2312编码,如通过地址栏发送异步参数?key=百度,对方通过GET接收确是乱码,请问这该如何处理啊。实在没分了,请大神帮帮我,谢谢了

1、运行控制台,程序->运行,输入CMD,点击确定进入DOS操作系统 快捷键windows键+R键。

2、编写需要运行的java代码。

3、切换运行目录到您存放java代码的目录!使用命令 cd 切换。

4、解决错误提示:编码 GBK 的不可映射字符,使用命令:javac -encoding utf-8 helloword.java,编译成功。

5、成功编译后,在tmp目录下能看到helloword.java文件编译后的.class字节码文件。使用命令【 java helloword 】,运行java程序。

参考技术A

通常PHP中上传文件,如果文件名称有中文字符,上传之后的名称是无法写入到本地的,因为上传来的编码格式一般是UTF-8的格式,这种格式是无法给文件命名并且存储到操作系统磁盘。在写入之前需要将其转换为gbk的中文编码格式:

$fileName=iconv("UTF-8", "gbk", $fileName);

同样,从系统磁盘中读取文件获得的文件名称是gbk编码格式,这种格式php也是无法传递给其他页面,这时候就需要将它编码成UTF-8的格式:

$fileName=iconv("gbk", "UTF-8", $fileName); 

扩展资料

很多人在使用过程中,发现字不够用,因为大家使用的主要是GB编码字库,此编码标准只收录了6763个常用汉字,而GB字库以外大量汉字,只能通过方正女娲补字软件拼字或其它造字程序补字。尽管补出的汉字在字形上满足需要。

但在字体风格、大小、结构方面难以协调统一,而采用手工贴图的方式补字,更不雅观。进而言之,如果用户建立信息系统,或需要查询新闻、出版内容时,靠补字是无法实现的。方正开发的GBK字库,将极大地缓解缺字现象。

从GB字库扩充到GBK字库,增加了1万4千多字。北大方正从1996年投入大量人力,开始做黑、宋、仿、楷GBK字库,并于1998年4月成为第一家通过国家权威部门组织的GBK字库鉴定的专业厂商。

北大方正已将全部字体转换成GBK字库,共46款,其中18款字数达21003个,是拥有GBK字库款数最多的厂商。

参考技术B 网址传递汉字,要用urlencode函数进行编码追问

urlencode函数进行编码如何写,能贴出来吗,谢谢了,我现在的代码如楼下我发的那张图片

追答

kerword='.urlencode($zhishuname).'&.......

本回答被提问者采纳
参考技术C nodepad++打开网页 全选网页内容,选择“格式”-》转为UTF-8 无BOM编码模式,保存 参考技术D

使用iconv()函数转换字符的编码。

例如:

$str = '哈哈哈哈哈哈哈';
iconv("UTF-8", "GB2312//IGNORE", $str);

望采纳!

追问

代码如上截图,若使用iconv()函数转换字符的编码,能把这个写全一点吧,谢谢了

如何使用Java代码将GBK编码格式的工程转换为UTF-8编码格式的工程

不写代码的话可以直接找个批量转换文本编码的软件搞定。

写代码稍微复杂一些。

    新建一个目录

    遍历递归原工程目录,以gbk编码读取,以utf8编码写文件到新的目录下即可。

    手动重命名工程为 工程备份

    手动重命名新目录为 工程名

    检查无误后删除工程备份

参考技术A private static void GbkToutf8(File file)

BufferedReader br = null;
BufferedWriter bw = null;
StringBuilder sb=new StringBuilder();
try

try

br = new BufferedReader(new InputStreamReader(new FileInputStream(file), "GBK"));
String line=null;
int count=0;
while ((line = br.readLine()) != null)

count++;
if(count>1)

sb.append("\n");

sb.append(line);


finally

br.close();

bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), "UTF-8"));
bw.write(sb.toString());

catch (UnsupportedEncodingException e)

// TODO Auto-generated catch block
e.printStackTrace();

catch (FileNotFoundException e)

// TODO Auto-generated catch block
e.printStackTrace();

catch (IOException e)

// TODO Auto-generated catch block
e.printStackTrace();

finally

try

bw.close();

catch (IOException e)

// TODO Auto-generated catch block
e.printStackTrace();


以上是关于php 将中文转换为GBK编码的主要内容,如果未能解决你的问题,请参考以下文章

php--utf8和gbk相互转换

如何把js获取url中文乱码转码

函数:PHP将字符串从GBK转换为UTF8字符集iconv

QT中将gbk字符转换为utf-8字符

如何将phpinfo字符串类型转换

如何把utf-8编码的转换为gb2312