linux操作系统下从其他服务器获取的xml字符串中文为乱码,在本地无法解析

问题描述

一个javaweb项目部署在一台服务器上,服务器采用的是linux操作系统,调用其他公司提供的webservice接口获取到一个xml的字符串,然后使用dom在本地解析,得到的字符串是乱码,请问高手们这个问题怎么解决。publicstaticList<Product>readProductDomXml(Stringstr)throwsException{List<Product>products=newArrayList<Product>();DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();DocumentBuilderbuilder=factory.newDocumentBuilder();ByteArrayInputStreaminStream=newByteArrayInputStream(newString(str.getBytes("GB2312"),"UTF-8").getBytes());//ByteArrayInputStreaminStream=newByteArrayInputStream();Documentdom=builder.parse(inStream);Elementroot=dom.getDocumentElement();NodeListnodes=root.getElementsByTagName("information");for(inti=0;i<nodes.getLength();i++){Productproduct=newProduct();Elementelement=(Element)nodes.item(i);NodeListchildNodes=element.getChildNodes();for(intj=0;j<childNodes.getLength();j++){if(childNodes.item(j).getNodeType()==Node.ELEMENT_NODE){if("productnumber".equals(childNodes.item(j).getNodeName())){product.setProductNumber(childNodes.item(j).getFirstChild().getNodeValue());}if("productname".equals(childNodes.item(j).getNodeName())){product.setProductName(childNodes.item(j).getFirstChild().getNodeValue());}if("balancetype".equals(childNodes.item(j).getNodeName())){product.setBalanceType(childNodes.item(j).getFirstChild().getNodeValue());}if("balance".equals(childNodes.item(j).getNodeName())){product.setBalance(childNodes.item(j).getFirstChild().getNodeValue());}}}products.add(product);}for(inti=0;i<products.size();i++){System.out.println(products.get(i).getBalance());}inStream.close();returnproducts;}关键就是这里ByteArrayInputStreaminStream=newByteArrayInputStream(newString(str.getBytes("GB2312"),"UTF-8").getBytes());这样不能解决问题,得到的还是乱码。

时间: 2024-11-10 01:12:06

linux操作系统下从其他服务器获取的xml字符串中文为乱码,在本地无法解析的相关文章

Linux操作系统下配置DNS服务器的方法介绍

有两台邮件服务器分别为192.168.1.1(windows下主机名为b.test.cn)和192.168.1.3(linux下主机名为a.test.com). 在linux下配置DNS服务器,下面是配置过程中设置过的一些文件, /etc/hosts 文件的具体内容如下: # Do not remove the following line, or various programs# that require network functionality will fail.127.0.0.1 l

如何配置Linux操作系统下的FTP服务器

为了实现Linux环境下的FTP服务器配置,绝大多数的Linux发行套装中都选用的是Washington University FTP(Wu-Ftpd),这是一个性能优秀的服务器软件,由于它具有众多强大功能和超大的吞吐量,Internet上的FTP服务器有60%以上采用了它. 安装与运行 以下我们以RedHat Linux为例. 1.安装 根据服务对象的不同,FTP服务可以分为两类:一类是系统FTP服务器,它只允许系统上的合法用户使用:另一类是匿名FTP服务器,它允许任何人登录到FTP服务器,和

网页设计-linux环境下访问boa服务器网页图片无法显示

问题描述 linux环境下访问boa服务器网页图片无法显示 单独打开网页文件图片是可以现实的. 通过boa服务器访问ip地址时图片无法显示 这应该不是网页设计问题吧.是什么原因?服务器的问题吗? 解决方案 先看你页面上console中的日志信息,是否提示背景图片没有获取,然后就是查看服务器上的日志,图片估计没有正确返回给浏览器 解决方案二: 您好,我也在做这个方面,一起探讨QQ1845395137

《Java程序员面试秘笈》—— 面试题3 Linux操作系统下如何安装Java SE开发环境

面试题3 Linux操作系统下如何安装Java SE开发环境 考点:由于大部分的计算机用户都使用Windows作为操作系统,而Java语言是具有跨平台优势的,不同企业有不同的开发环境,本试题考察求职者是否有在Linux下开发Java的经验.Linux环境下的Java安装是一个基础问题. 出现频率: [面试题解析]该问题有两个关键点,一个是Linux版本Java SDK的文件类型,另外一个是Linux环境变量的配置. 参考答案: Oracle发布的Linux操作系统Java包有JDK和JRE两种版

编码-jQuery中的ajax方法获取到json数据中文会乱码

问题描述 jQuery中的ajax方法获取到json数据中文会乱码 接口如下:http://cre.mix.sina.com.cn/api/finance/topstock_display这个接口 默认返回是 gbk的编码 支持 oe=utf-8,但是xtmlhttprequest 返回的数据默认的字符编码是utf-8,后台说用oe=utf转换,求解... 解决方案 首先你这不是json,所以你需要从服务器语言上把数据转换成json再去传到前端:其次,你要把后台脚本改成utf-8编码,不知道你用

详解Linux 操作系统下安装rpm包的方法步骤_linux shell

第2代Linux操作系统在安装软件方面相当简单:第一步,搜索你要的软件,比如你要找一个游戏软件,它的名称叫myward,这个游戏软件的说明是:myown war game.Linux操作系统搜索这个软件包就只需要输入命令apt-cache searchmyward,或者输入软件名称的一部分apt-cache searchwar,或者你不知道软件名称. 下面有一张图可以清晰地表示linux软件应用的架构关系: 在Linux启动的时候.首先会启动内核(kernel),内核是一段计算机程序,这个程序直

Linux操作系统下C++编程初探

Linux下C++编程和在Windows下的没有什么两样,它同样需要编译.链接.调度.运行等步骤,只不过执行这些步骤在两种操作系统下所做的不是同样的事情. 在Windows下有TC, BC, VC等编译器,它们极大地方便了程序的编辑编译等,在Windows下你只需要看明白菜单就可以了.而在Linux下是Gcc, G++, Gdb等工具,刚开始时你可能甚至不知道如何下手去调试程序,你也可能甚至不知道程序在哪里编辑.不过这些都不是问题,慢慢来我们都能行! 下面我们以一个最简单也是最经典的Hello

在Linux操作系统下用软件实现RAID功能

数据安全性是人们在使用计算机中最重要的问题之一.通常情况下,人们会在服务器环境中采用硬盘镜像技术,以达到数据的双重备份.同样,在Linux环境下,我们也可以采用这种技术. 在Linux环境下,采用Raidtools工具,不仅可以将两个硬盘进行镜像,还可以制作软RAID0.RAID1.RAID5.说是软RAID,是因为通常情况下,RAID盘是通过专用的RAID卡进行的,而在Linux环境下,可以利用Raidtools软件实现RAID功能,所以称为软RAID.本文介绍根据不同的Linux版本,建立并

在Linux操作系统下设置NFS共享技巧

网络文件系统(NFS,Network File System)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来对远程主机的共享分区(目录)进行操作. 在嵌入式Linux 的开发过程中,开发者需要在Linux 服务器上进行所有的软件开发,交叉编译后,通用FTP 方式将可执行文件下载到嵌入式系统运行,但这种方式不但效率低下,且无法实现在线的调试.因此,可以通过建立NFS,把Linux 服务器上的特定分区共享到待调试的嵌