String t="C:\\tmp\\bin";
System.out.println(t.replaceAll("\\\\","\\\\\\\\"));
System.out.println(t.replaceAll("\\\\","\\\\\\\\"));
解决方案 »
- 在父类中访问子类的成员变量
- LDAP: error code 53 !!!
- mysql中文编码问题
- itext导出word的问题
- 求助,C#如何通过串口写汉字到LED显示屏?有VB源码。全部身家相送
- 求一个用java做的发送email的程序
- 为什么import xxx.ClassName;可以,而import xxx.*;不行?
- 誰能幫助做一個java調用windows API的sample出來
- 有关于jbuilder这方面的书吗
- 十万火急,,请问高手,在SWING中给一个字符加下划线,怎样实现的??十万火急
- appletviewer中可以运行的applet,在IE中为何不能运行?
- 急问!!!!!!
{
public static void main(String[] args)
{
System.out.println("C:\tmp\bin");
System.out.println("C:\\tmp\\bin");
System.out.println("C:\\\\tmp\\\\bin");
}
}
想要几个就几个.
楼主运行一下自然就明白了。pubic class Test
{
public static void main(String[] args)
{
System.out.println("C:\tmp\bin");
System.out.println("C:\\tmp\\bin");
System.out.println("C:\\\\tmp\\\\bin");
}
}
楼主所要解决的"\temp"换成"\\temp"
好象还不能实现
要有一个通用的方法,nc201(Bricklayer) 的方法是可行,但是你怎么样把源字符串中的所有的反斜杠转换成两个反斜杠呢??这是我最终要解决的问题
我等。。
我就不信没有高手
不是的,实际情况是这样:是在界面上由用户输入的文件路径,然后我取到这个路径,最后要把它中的所有的反斜杠转换成两个反斜杠后传出去(传到c++程序做处理),这个是c++要求的
所以说并不是打印出来的就是"C:\tmp\bin",而是一个字符串本身就是单斜杠的,我要转成双斜杠^_^
System.out.println(str.replaceAll("\\\\", "\\\\\\\\"));
你将str.replaceAll("\\\\", "\\\\\\\\")传给c++就可以了
这样java会把(\)和后面的字符当作一个转义字符来用
这样就无法使用replace方法了java应该能够解决这个问题,可惜我不懂,嘿嘿。
能不能在java之前解决,呵呵,如果是jsp来的数据,在页面上用js先搞定
getBytes
转义字符的byte应该都在空格(23?)以下
凡是小于空格的都作相应的转换呵呵
对!我的意思你说对了。Java的不管replace方法还是split方法,都是基于正则表达式的,但是正则表达式对于"\\"是不认的,所以都不能解决这个问题。
最后我想到用8位的字节流来处理,已经搞定了:public static String TranDirectory(String content)
{
String result = "";
int startPoint = 0;
byte[] testBye = content.getBytes();
for(int i=0;i<testBye.length;i++)
{
if(testBye[i]==92)
{
result += content.substring(startPoint,i);
result += "\\\\";
startPoint = i+1;
}
}
result += content.substring(startPoint,testBye.length);
return result;
}
调用TranDirectory("C:\tmp\bin");就返回"C:\\tmp\\bin"
呵呵,很轻松搞定!