当前位置:首页 » 操作系统 » javalinux乱码怎么解决

javalinux乱码怎么解决

发布时间: 2022-04-04 17:54:37

javalinux下创建文件,中文文件名为乱码

JBoss4.0.5使用的是tomcat5,而tomcat的默认字符集是ISO-8859-1.找到JBoss的根目录下名 为\%JBoss4.0.5%server\default\deploy\jbossweb-tomcat55.sar的文件夹.
修改server.xml文件.

修改方法,找到<Connector port="8080"
......>默认是8080端口,在后面加入URIEcoding='UTF-8',字符集根据页面进行相应的设置,我的整个项目是使用UTF-
8字符集(包括UTF-8).
<Connector port="8080" address="${jboss.bind.address}"
maxThreads="250" strategy="ms" maxHttpHeaderSize="8192"
emptySessionPath="true"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
zip包是在windows环境下打的压缩包,通过java控制在linux环境下解压之后,解压出来的文件和文件夹中的中文文件名是乱码,请问应如何解决

⑵ 使用java连接linux,执行shell命令返回值有乱码,怎么解决

packagecom.pasier.xxx.util;

importjava.io.IOException;
importjava.io.InputStream;
importjava.nio.charset.Charset;

importorg.slf4j.Logger;
importorg.slf4j.LoggerFactory;

importch.ethz.ssh2.ChannelCondition;
importch.ethz.ssh2.Connection;
importch.ethz.ssh2.Session;
importch.ethz.ssh2.StreamGobbler;

publicclassRmtShellExecutor{

privatestaticfinalLoggerLOG=LoggerFactory.getLogger(RmtShellExecutor.class);

privateConnectionconn;
privateStringip;
privateStringusr;
privateStringpsword;
privateStringcharset=Charset.defaultCharset().toString();

privatestaticfinalintTIME_OUT=1000*5*60;

publicRmtShellExecutor(Stringip,Stringusr,Stringps){
this.ip=ip;
this.usr=usr;
this.psword=ps;
}

privatebooleanlogin()throwsIOException{
conn=newConnection(ip);
conn.connect();
returnconn.authenticateWithPassword(usr,psword);
}

publicStringexec(Stringcmds)throwsIOException{
InputStreamstdOut=null;
InputStreamstdErr=null;
StringoutStr="";
StringoutErr="";
intret=-1;

try{
if(login()){
Sessionsession=conn.openSession();
session.execCommand(cmds);
stdOut=newStreamGobbler(session.getStdout());
outStr=processStream(stdOut,charset);
LOG.info("caijl:[INFO]outStr="+outStr);
stdErr=newStreamGobbler(session.getStderr());
outErr=processStream(stdErr,charset);
LOG.info("caijl:[INFO]outErr="+outErr);
session.waitForCondition(ChannelCondition.EXIT_STATUS,TIME_OUT);
ret=session.getExitStatus();

}else{
LOG.error("caijl:[INFO]ssh2loginfailure:"+ip);
thrownewIOException("SSH2_ERR");
}

}finally{
if(conn!=null){
conn.close();
}
if(stdOut!=null)
stdOut.close();
if(stdErr!=null)
stdErr.close();
}

returnoutStr;
}

privateStringprocessStream(InputStreamin,Stringcharset)throwsIOException{
byte[]buf=newbyte[1024];
StringBuildersb=newStringBuilder();
while(in.read(buf)!=-1){
sb.append(newString(buf,charset));
}
returnsb.toString();
}

publicstaticvoidmain(String[]args){

Stringusr="root";
Stringpassword="12345";
StringserverIP="11.22.33.xx";
StringshPath="/root/ab.sh";

RmtShellExecutorexe=newRmtShellExecutor(serverIP,usr,password);

StringoutInf;

try{
outInf=exe.exec("sh"+shPath+"xn");
System.out.println("outInf="+outInf);
}catch(IOExceptione){
e.printStackTrace();
}
}

}

⑶ java在linux系统下文件夹出现中文乱码的问题

问题描述:
linux的默认字符编码是utf-8,在linux上存的是中文名的文件,但是用java读出来就是乱码,全是??????然后我通过:new
String(files[i].getName().getBytes("GB2312"),"UTF-8");这样处理一下,中文文件名全变成了?????,应该怎么转码才能获取中文?
问题答案:
Java
中的字符编码默认是Unicode
用new
String(files[i].getName().getBytes("UTF-8"),"UTF-8");试下看对我有帮助
用utf8格式上传,然后再用utf8格式下载就好了,但是服务器上存的是乱码的,遍历出来是中文的。

⑷ java在linux下创建文件,中文文件名为乱码。请问这个问题是怎么解决的,谢谢~

修改linux的编码方式。或者不要命名中文。最好是不要命名为中文

⑸ 如何解决Java项目中的中文乱码

  1. 设置工作空间的编码:

    编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置,每一个项目都会受到这个设置的影响。点击菜单栏中的窗口(Window)— —选项(Preferences)。

    点击常规(General)— —工作空间(Wordspace),然后在右侧的文本文件编码格式(Text file encoding)中选择你想要设置的编码格式,系统默认的格式为GBK。

  2. 设置项目的编码:

    如果其他的项目中不存在乱码问题,只是个别项目显示时出现乱码,那么我们不需要设置工作空间的编码,只需要修改项目的编码即可。

    选中项目后,右键点击,在弹出的菜单中点击属性(Properties)。

    在弹出的属性窗口中,选择资源(Resource)— —点击选择Other(其他),然后选择你想要的编码格式。

  3. 设置单个文件的编码:

    只是个别文件出现了乱码,那么设置个别文件的编码格式就可以解决问题了。选中有乱码的文件,然后点击右键。

    在弹出的菜单中选择属性(Properties)。

    在弹出的属性窗口中选择资源,点击Other(其他)后设置个别文件的编码方式

⑹ java 读取linux文件内容乱码 但是在linux上查看文件是正常

选用正确的charset

⑺ 通过java控制linux环境下解压文件夹后中文文件名是乱码

将linux当前环境设置为中文环境即可。
修改/etc/sysconfig/i18n 文件
LANG="zh_CN.GB2312"

⑻ java web在Linux上传输的乱码的求解

你本地和LINUX的编码不一致所导致的乱码
解决如下:
1、设置request的编码 new String(request.getParameter("参数名").getBytes("iso-8859-1"), "gbk");
将默认的iso-8859-1转为gbk 不行的话就多换几种编码
2、设置LINUX的编码
命令行敲入:vi /etc/sysconfig/i18n 修改为以下内容
#LANG="zh_CN.UTF-8"
#SUPPORTED="zh_CN.UTF-8:zh_CN:zh"
#SYSFONT="latarcyrheb-sun16"
#LANG="en_US.UTF-8"
#SUPPORTED="en_US.UTF-8:en_US:en"
#SYSFONT="latarcyrheb-sun16"
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
export LC_ALL="zh_CN.GB18030"
建议如上 不喜勿喷

热点内容
c语言从大到小输出for 发布:2024-09-28 03:26:34 浏览:645
java实现方法 发布:2024-09-28 03:21:23 浏览:206
车载云服务器有什么用 发布:2024-09-28 03:07:07 浏览:239
苹果平板电脑如何给app设置密码 发布:2024-09-28 02:56:45 浏览:803
存储概念股 发布:2024-09-28 02:51:19 浏览:193
网络营销编程 发布:2024-09-28 02:51:16 浏览:720
浪潮物理盘缓存状态在哪 发布:2024-09-28 02:34:00 浏览:709
南开大学数据库 发布:2024-09-28 02:07:02 浏览:533
app的密码从哪里设置 发布:2024-09-28 02:01:56 浏览:467
如何去掉苹果电脑的锁屏密码 发布:2024-09-28 01:48:15 浏览:365