精华内容
下载资源
问答
  • java中File的绝对路径和相对路径的校验
    千次阅读
    2021-03-05 13:18:15

    1、首先看一下File中参数的集中形式

    ①//构造函数File(String pathname)

    File f1 = new File("c:\\1.txt");

    ②//File(String parent,String child)

    File f2 = new File("c:\\abc","2.txt");

    ③//File(File parent,String child)

    File f3 =new File("c:"+File.separator+"abc");//separator 是跨平台分隔符

    File f4 =new File(f3,"3.txt");

    2、File f1 可以定义绝对路径,也可以定义相对路径

    3、区分相对和绝对

    ①绝对路径:

    a.带盘符,如E:/book.xml

    b.以http开头,http://img.baidu.com/img/book.jpg

    ②相对路径:

    a.带"/"开头,如/book.xml

    b.不带"/"开头,如book.xml

    4、相对和绝对的校验方式:

    public String filter3(String param){

    if(param!=null || param!=""){

    if(":".equals(param.indexOf(1,2))){//是绝对路径

    param = param.replaceAll("../", "").replaceAll("./", "");

    String params [] = param.substring(2,param.length()).split("/");

    String aa = "";

    if(params.length>0){

    for(int i=0;i

    //正则表达式:/ * : < > ?

    Pattern pattern = Pattern.compile("[\\s\\\\/:\\*\\?\\\"<>\\|]");

    Matcher matcher = pattern.matcher(params[i]);

    aa += matcher.replaceAll("") + "/" ;

    }

    }

    param = param.substring(0,2) + aa ;

    param = param.substring(0,param.length()-1);

    }else if("http:".equals(param.toLowerCase().indexOf(0,5))){

    param = param.replaceAll("../", "").replaceAll("./", "");

    String params [] = param.substring(5,param.length()).split("/");

    String aa = "";

    if(params.length>0){

    for(int i=0;i

    //正则表达式:/ * : < > ?

    Pattern pattern = Pattern.compile("[\\s\\\\/:\\*\\?\\\"<>\\|]");

    Matcher matcher = pattern.matcher(params[i]);

    aa += matcher.replaceAll("") + "/" ;

    }

    }

    param = param.substring(0,5) + aa ;

    param = param.substring(0,param.length()-1);

    }else{//是相对路径

    param = param.replaceAll(":", "");

    String params [] = param.substring(5,param.length()).split("/");

    String aa = "";

    if(params.length>0){

    for(int i=0;i

    //正则表达式:/ * : < > ?

    Pattern pattern = Pattern.compile("[\\s\\\\/:\\*\\?\\\"<>\\|]");

    Matcher matcher = pattern.matcher(params[i]);

    aa += matcher.replaceAll("") + "/" ;

    }

    }

    param = param.substring(0,5) + aa ;

    param = param.substring(0,param.length()-1);

    }

    }

    return param;

    }

    更多相关内容
  • VS CODE中配置JAVA格式化细节

    千次阅读 2021-03-11 13:52:48
    VS CODE版本:1.46由于VS CODE是使用“Language Support for Java(TM) by Red Hatredhat.java预览版”进行格式化的,所以需要在这个插件里设置格式。在“(用户名)\.vscode\extensions\redhat.java-0.62.0\formatters...

    VS CODE版本:1.46

    由于VS CODE是使用“Language Support for Java(TM) by Red Hatredhat.java预览版”进行格式化的,所以需要在这个插件里设置格式。

    在“(用户名)\.vscode\extensions\redhat.java-0.62.0\formatters\eclipse-formatter.xml”中可以设置格式化细节。

    找到对应内容,设置即可。

    如:

    else新起一行:

    花括号换行:

    设置完毕后,需要让这个插件使用本xml进行格式化。

    在用户设置中进行设置(如果已经打开工作区,也需要在工作区中设置)。

    需要注意插件偷偷升级后,路径会发生变化。

    347da8b8555d82a12310af0a46923d07.png

    (或在settings.json中设置,一样的)

    "java.format.settings.url": "C:\\Users\\XXX\\.vscode\\extensions\\redhat.java-0.62.0\\formatters\\eclipse-formatter.xml"

    然后就可以按照自己设置好的格式,去格式化java代码了。

    b8ab8143db0c9df4320e1930e73da15d.png

    如果遇到缓存有问题,导致智能提示不准确的问题,命令板(ctrl+shift+P)中,清理java的语言服务工作区即可(会提示后,重启vs code)。如下图:

    d86934813f7dce88a9742358d4999032.png

    展开全文
  • java的文件路径怎么写-Java基础-PHP中文网
    展开全文
  • 类似于Json的在线解析。使用Java图形实现Json的本地格式化,是一个本地Json格式化的工具,提供源码下载。
  • Java字符串模板格式化汇总8法(附性能对比) 结论: 1.循环中,不要用+进行字符串拼接,而用StringBuilder.append()方法 2.非循环中,字符串拼接使用+性能最高,其次是StringBuilder.append()方法 1. ++ ...

    Java字符串模板格式化汇总8法(附性能对比)

     

    结论: 

    1. 循环中, 不要用+进行字符串拼接, 而用StringBuilder.append()方法

    2. 非循环中, 字符串拼接使用+性能最高, 其次是StringBuilder.append()方法

     

     

     

     

     

    1. ++

    对于初学JAVA的蒙童,大约都会使用这招

    @Test
    public void testAdd(){
    
        Date now = new Date();
    
        String yearMonth = DateUtil.toString(now, DatePattern.YEAR_AND_MONTH);
        String expressDeliveryType = "sf";
        String fileName = DateUtil.toString(now, DatePattern.TIMESTAMP);
    
        String template = "/home/expressdelivery/" + yearMonth + "/" + expressDeliveryType + "/vipQuery_" + fileName + ".log";
    
        System.out.println(template);
    }

    输出 :

    /home/expressdelivery/2017-07/sf/vipQuery_20170723042314.log

    2. StringBuffer / StringBuilder

    @Test
    public void testStringBuilder(){
    
        Date now = new Date();
    
        String yearMonth = DateUtil.toString(now, DatePattern.YEAR_AND_MONTH);
        String expressDeliveryType = "sf";
        String fileName = DateUtil.toString(now, DatePattern.TIMESTAMP);
    
        StringBuilder sb = new StringBuilder();
        sb.append("/home/expressdelivery/");
        sb.append(yearMonth);
        sb.append("/");
        sb.append(expressDeliveryType);
        sb.append("/vipQuery_");
        sb.append(fileName);
        sb.append(".log");
    
        String template = sb.toString();
    
        System.out.println(template);
    }

    输出 :

    /home/expressdelivery/2017-07/sf/vipQuery_20170723042603.log

    缺点:

    • 代码太长了

    3. StringUtil.format(String, Object…​)

    使用 com.feilong.core.lang.StringUtil.format(String, Object…​)

    内部封装了 String.format(String, Object)

    @Test
    public void testStringFormat(){
        Date now = new Date();
    
        String yearMonth = DateUtil.toString(now, DatePattern.YEAR_AND_MONTH);
        String expressDeliveryType = "sf";
        String fileName = DateUtil.toString(now, DatePattern.TIMESTAMP);
    
        String template = StringUtil.format("/home/expressdelivery/%s/%s/vipQuery_%s.log", yearMonth, expressDeliveryType, fileName);
    
        System.out.println(template);
    }

    输出 :

    /home/expressdelivery/2017-07/sf/vipQuery_20170723043153.log

    4. MessageFormatUtil.format(String, Object…​)

    使用 com.feilong.core.text.MessageFormatUtil.format(String, Object…​)

    内部封装了 java.text.MessageFormat.format(String, Object…​)

    @Test
    public void testMessageFormat(){
        Date now = new Date();
    
        String yearMonth = DateUtil.toString(now, DatePattern.YEAR_AND_MONTH);
        String expressDeliveryType = "sf";
        String fileName = DateUtil.toString(now, DatePattern.TIMESTAMP);
    
        String template = MessageFormatUtil
                        .format("/home/expressdelivery/{0}/{1}/vipQuery_{2}.log", yearMonth, expressDeliveryType, fileName);
    
        System.out.println(template);
    }

    输出 :

    /home/expressdelivery/2017-07/sf/vipQuery_20170723043153.log

    5. Slf4jUtil.format(String, Object…​)

    使用 com.feilong.tools.slf4j.Slf4jUtil.format(String, Object…​)

    借助 slf4j 日志占位符

    @Test
    public void testSlf4jFormat(){
        Date now = new Date();
    
        String yearMonth = DateUtil.toString(now, DatePattern.YEAR_AND_MONTH);
        String expressDeliveryType = "sf";
        String fileName = DateUtil.toString(now, DatePattern.TIMESTAMP);
    
        String template = Slf4jUtil.format("/home/expressdelivery/{}/{}/vipQuery_{}.log", yearMonth, expressDeliveryType, fileName);
    
        System.out.println(template);
    }

    输出:

    /home/expressdelivery/2017-07/sf/vipQuery_20170723144236.log

    6. StringUtil.replace(CharSequence, Map<String, V>)

    使用 com.feilong.core.lang.StringUtil.replace(CharSequence, Map<String, V>)

    内部封装了 apache commons-lang3 org.apache.commons.lang3.text.StrSubstitutor , 现在叫 commons-text

    使用给定的字符串 templateString 作为模板,解析匹配的变量 .

    @Test
    public void testReplace(){
        Date date = new Date();
        Map<String, String> map = new HashMap<>();
        map.put("yearMonth", DateUtil.toString(date, YEAR_AND_MONTH));
        map.put("expressDeliveryType", "sf");
        map.put("fileName", DateUtil.toString(date, TIMESTAMP));
    
        String template = StringUtil.replace("/home/expressdelivery/${yearMonth}/${expressDeliveryType}/vipQuery_${fileName}.log", map);
    
        System.out.println(template);
    }

    输出:

    /home/expressdelivery/2017-07/sf/vipQuery_20170723144608.log

    优点:

    • 模块可以定义变量名字了,不怕混乱

    Note

    此方法只能替换字符串,而不能像el表达式一样使用对象属性之类的来替换

    7. VelocityUtil.parseString(String, Map<String, ?>)

    使用 com.feilong.tools.velocity.VelocityUtil.parseString(String, Map<String, ?>)

    该方法需要 jar

    <dependency>
      <groupId>com.feilong.platform.tools</groupId>
      <artifactId>feilong-tools-velocity</artifactId>
      <version>${version.feilong-platform}</version>
    </dependency>
    @Test
    public void testVelocityParseString(){
        Date date = new Date();
    
        Map<String, String> map = new HashMap<>();
        map.put("yearMonth", DateUtil.toString(date, YEAR_AND_MONTH));
        map.put("expressDeliveryType", "sf");
        map.put("fileName", DateUtil.toString(date, TIMESTAMP));
    
        VelocityUtil velocityUtil = new VelocityUtil();
    
        String template = velocityUtil
                        .parseString("/home/expressdelivery/${yearMonth}/${expressDeliveryType}/vipQuery_${fileName}.log", map);
    
        System.out.println(template);
    }

    输出

    /home/expressdelivery/2017-07/sf/vipQuery_20170723145856.log

    8. VelocityUtil.parseTemplateWithClasspathResourceLoader(String, Map<String, ?>)

    使用 com.feilong.tools.velocity.VelocityUtil.parseTemplateWithClasspathResourceLoader(String, Map<String, ?>)

    该方法需要 jar

    <dependency>
      <groupId>com.feilong.platform.tools</groupId>
      <artifactId>feilong-tools-velocity</artifactId>
      <version>${version.feilong-platform}</version>
    </dependency>

    该方法适合于 字符串模板独立成文件, 方便维护

    路径是classpath 下面, 比如 velocity/path.vm

    28497395 a52f617c 6fb8 11e7 9902 66249985242a

    此时代码需要如此调用:

    @Test
    public void testVelocityParseTemplateWithClasspathResourceLoader(){
        Date date = new Date();
    
        Map<String, String> map = new HashMap<>();
        map.put("yearMonth", DateUtil.toString(date, YEAR_AND_MONTH));
        map.put("expressDeliveryType", "sf");
        map.put("fileName", DateUtil.toString(date, TIMESTAMP));
    
        VelocityUtil velocityUtil = new VelocityUtil();
    
        String template = velocityUtil.parseTemplateWithClasspathResourceLoader("velocity/path.vm", map);
    
        System.out.println(template);
    }

    输出 :

    /home/expressdelivery/2017-07/sf/vipQuery_20170723150443.log

    9. 性能对比

    28501853 87f4c8c2 7017 11e7 99db 3b2d47c803a8

    上图是 分别循环 100000, 500000, 1000000, 2000000 统计出来的数据

    在性能上 String format 是最差的

    字符串 ++ 最快, StringBuilder 次之 , slf4j 的格式化再次之

    测试硬件概览:

    型号名称:	MacBook Pro
    处理器名称:	Intel Core i5
    处理器速度:	2.9 GHz
    内存:	16 GB

    10. 参考

     

     

    转载:

    Java字符串模板格式化汇总8法(附性能对比) - 飞天奔月的个人空间 - OSCHINA
    https://my.oschina.net/venusdrogon/blog/1486633

     

     

     

     

     

     

     

    ========================================================================

    ========================================================================

    ========================================================================

     

     

    字符串连接你用+还是用StringBuilder - 掘金
    https://juejin.im/post/5b2af17de51d4558c713507c#heading-2

     

     

     

     

     

     

    字符串连接你用+还是用StringBuilder

    前言

    据我所知字符串确实已经成为 Java 开发人员最常用的类了,而且是大量使用。我们都知道,String 其实是封装了字符,所以俩字符串连接就是将字符串对象里面的字符连起来。很多人习惯使用+来连接字符串,也有人会用 StringBuilder 的append方法。

    "+"编译后

    看看如果我们在程序中直接使用+来连接字符串的情况,用下面一个简单的例子来说明,进行两个字符串连接操作,即s3 = s1 + s2

    public class TestString {
    	public static void main(String[] args) {
    		String s1 = "www";
    		String s2 = "ccc";
    		String s3 = s1 + s2;
    	}
    }
    复制代码

    接着javap -c TestString.class看一下编译后的情况,可以看到编译器其实是对+进行了转换的,转成了 StringBuilder 对象来操作了,首先使用 s1 创建 StringBuilder 对象,然后用 append方法连接 s2,最后调用toString方法完成。

    public class com.seaboat.string.TestString {
      public com.seaboat.string.TestString();
        Code:
           0: aload_0
           1: invokespecial #8                  // Method java/lang/Object."<init>":()V
           4: return
    
      public static void main(java.lang.String[]);
        Code:
           0: ldc           #16                 // String www
           2: astore_1
           3: ldc           #18                 // String ccc
           5: astore_2
           6: new           #20                 // class java/lang/StringBuilder
           9: dup
          10: aload_1
          11: invokestatic  #22                 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
          14: invokespecial #28                 // Method java/lang/StringBuilder."<init>":(Ljava/lang/String;)V
          17: aload_2
          18: invokevirtual #31                 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
          21: invokevirtual #35                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
          24: astore_3
          25: return
    }
    复制代码

    "+"与"append"等价吗

    前面可以看到+在编译器作用下都会转成 StringBuilder 的append方法执行,所以如果抛开运行效率来说,它们其实本质是一样的。

    本质一样是否就能说明它们时等价的呢?或者说能否为了方便直接用+来连接字符串,剩下的事就交给编译器了?继续看个例子,在这个例子中有个 for 循环进行字符串连接操作。

    public class TestString2 {
    	public static void main(String[] args) {
    		String s = "www";
    		for (int i = 0; i < 10; i++)
    			s += i;
    	}
    }
    复制代码

    编译后的情况如下,不熟悉指令没关系,我们只看重要的部分,if_icmplt 8,这个就是 for 循环的条件判断,小于10则不断跳到8的位置,8后面其实就是创建 StringBuilder 对象,并以本地变量s的值初始化该对象,接着再将本地变量i append到 StringBuilder 对象中,最后调用toString方法将所得值存到本地变量s。

    这样来看循环中每次都要创建 StringBuilder 对象,而且要调用toString方法,这样的执行效率显然比较低,而且增加了 GC 的压力。

    public class com.seaboat.string.TestString2 {
      public com.seaboat.string.TestString2();
        Code:
           0: aload_0
           1: invokespecial #8                  // Method java/lang/Object."<init>":()V
           4: return
    
      public static void main(java.lang.String[]);
        Code:
           0: ldc           #16                 // String www
           2: astore_1
           3: iconst_0
           4: istore_2
           5: goto          30
           8: new           #18                 // class java/lang/StringBuilder
          11: dup
          12: aload_1
          13: invokestatic  #20                 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
          16: invokespecial #26                 // Method java/lang/StringBuilder."<init>":(Ljava/lang/String;)V
          19: iload_2
          20: invokevirtual #29                 // Method java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder;
          23: invokevirtual #33                 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
          26: astore_1
          27: iinc          2, 1
          30: iload_2
          31: bipush        10
          33: if_icmplt     8
          36: return
    }
    复制代码

    友好写法

    把事情都丢给编译器是不友好的,为了能让程序执行更加高效,最好是我们自己来控制 StringBuilder 的实例,比如下面,只创建一个 StringBuilder 实例,后面用append方法连接字符串。

    public class TestString3 {
    	public static void main(String[] args) {
    		StringBuilder sb = new StringBuilder("www");
    		for (int i = 0; i < 10; i++)
    			sb.append(i);
    	}
    }
    复制代码

    编译后的情况如下,首先创建一个 StringBuilder 对象,使用字符串"www"来实例化该对象,接着循环调用append方法将本地变量i添加到 StringBuilder 对象中。

    public class com.seaboat.string.TestString3 {
      public com.seaboat.string.TestString3();
        Code:
           0: aload_0
           1: invokespecial #8                  // Method java/lang/Object."<init>":()V
           4: return
    
      public static void main(java.lang.String[]);
        Code:
           0: new           #16                 // class java/lang/StringBuilder
           3: dup
           4: ldc           #18                 // String www
           6: invokespecial #20                 // Method java/lang/StringBuilder."<init>":(Ljava/lang/String;)V
           9: astore_1
          10: iconst_0
          11: istore_2
          12: goto          24
          15: aload_1
          16: iload_2
          17: invokevirtual #23                 // Method java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder;
          20: pop
          21: iinc          2, 1
          24: iload_2
          25: bipush        10
          27: if_icmplt     15
          30: return
    }
    复制代码

     

     

     

     

     

     

    展开全文
  • java 代码格式化

    千次阅读 2015-10-25 21:02:11
    所以在阅读代码的时候,有一个统一的格式的话就好多了,下面介绍一下使用eclipse代码xml文件来达到格式化文件中的代码的例子,首先我们需要拥有一个统一的格式化代码的xml文件,该文件的地址我已经上传,可以下载: ...
  • 格式化文件操作,将数据按照模板写入新文件,正则表达式替换模板指定内容,文件读写,stateprocess.java 项目运行文件
  • Java NIO文件路径管理:Path类和Paths类

    万次阅读 2018-12-13 17:45:49
    本文章主要包括如下几个章节:类介绍、Path实例获取和文件路径管理。文件路径管理中,主要介绍了Path中定义的主要方法。 1、类的介绍  Path接口 是JDK1.7中定义的接口,主要用来在文件系统中定位文件,通常表示...
  • java中的相对路径和绝对路径使用
  • IDEA 代码格式化,快捷键

    万次阅读 2019-01-31 17:08:33
    一键格式化代碼: Ctrl+Alt+L 全局搜索替换:ctrl+shift+r 强大的搜索功能,shift+shift (无论您想要搜啥都能找到) ctrl+shift+R==搜索类 CTRL+N:按照类名搜索类 【常规】 Ctrl+Shift + Enter,语句完成 “!”,...
  • 将其改为具体的hadoop文件路径,想必这个大家也都知道,是在core-site.xml中配置的,默认的路径是在tmp文件夹下的,我们都会更改这个路径,很重要,也很基础的。 对于我的机器,改为 < property > < name >dfs...
  • javascript日期格式化
  • 所以想着是不是可以有一套自动化工具,可以敲个脚本就把代码给格式化了(至少可以把缩进给解决了);下面是我调研的几种思路和方案,它们主要是: Control+i的命令化(不可行或者说没搞定) 利用Vim的格式化功能...
  • Java File 类的文件名和路径相关函数

    千次阅读 2015-11-23 10:55:09
    Java File类的对文件名和路径处理的主要函数及其使用注意事项
  • java开发的格式与书写规范

    千次阅读 2021-10-19 10:15:55
    下载好eclipse格式化文件 按住ctrl + alt + S,重启后会发现出现eclipse code formatter 选项,点击进入 按照图片进行配置,路径选择文件夹内eclipse-codestyle文件。 注意:每次保存需要 ctr
  • 环境要求较高,至少得1G内存才能比较顺畅使用,512内存比较卡, 速度慢 参数只支持使用XML格式文件来存储测试数据 回放速度超级慢 附:所以才有了Selenium开发以后的强势和很多之前RFT使用者可以快速上手。...
  • Java IO篇:序列与反序列

    千次阅读 2022-01-12 03:22:50
    所以序列就是把 Java 对象变成二进制形式,本质上就是一个byte[]数组。将对象序列之后,就可以写入磁盘进行保存或者通过网络中输出给远程服务了。反之,反序列可以从网络或者磁盘中读取的字节数组,反序列化成...
  • java获取当前类的绝对路径

    千次阅读 2015-08-11 13:55:55
    1.如何获得当前文件路径 常用: (1).Test.class.getResource("") 得到的是当前类FileTest.class文件的URI目录。不包括自己! (2).Test.class.getResource("/") 得到的是当前的classpath的绝对URI路径...
  • java反序列漏洞利用工具

    千次阅读 2021-02-25 18:44:20
    java反序列漏洞已经被曝出一段时间了,其强大的破坏力让我们防不胜防!有没有合理的方法扫描、解决这些漏洞呢?小编给大家带来Java反序列终极测试工具,直接将Jboss、Websphere和weblogic的反序列漏洞的利用...
  • 支持旋转和透明度设置 摘要:Java源码,文件操作,图片水印 util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,...
  • java-web遗传算法最短路径规划

    千次阅读 2017-08-26 22:16:13
    使用遗传算法,使用D3可视库。前端部分使用CSS样式将需要点击的区域和body区域设置不同的样式。然后所有的内容都是用JavaScript完成,对于JavaScript的基本知识不做过多介绍,这也是一门面向对象的语言。 首先使用...
  • 在velocity中使用日期格式化

    万次阅读 2016-11-09 17:12:49
    添加velocity文件中格式化日期方法
  • EditPlus编辑器也能格式化Java代码

    千次阅读 2013-09-14 23:37:16
    EditPlus工具应该是每个程序猿必备的编辑器,但是它的很多功能是还没被我们充分利用,为了让EditPlus发挥更大的作用,经过多方搜集,总结下面的配置方式,下面介绍一个格式化Java代码的方式:  下载插件:...
  • </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value> </property> </configuration> 3,配置完成后,执行NameNode的格式化 切换目录:cd /usr/local/...
  • Java反序列之反射机制

    千次阅读 2021-12-07 20:18:03
    每次听到大佬在讲或者看论坛等一些方式学java反序列漏洞时,都会有一个词叫做反射机制,大佬顺势借着这个词,就给你造出一个payload,对于刚学java反序列的我们,可能有点会懵圈,反正我是懵了,所以就赶紧学了...
  • java 音频转为wav格式标准音频 | Java工具类

    万次阅读 多人点赞 2021-10-15 11:18:00
    目录 简述 环境依赖 maven依赖 ffmpeg依赖 工具类代码 总结 简述 该工具类主要是为了将各类音频转为wav标准格式,其中可以调节采样率、声道数等指标。主要是使用ffmpeg命令进行转换。...javacv-platfor
  • //如果要转成java字符串, 将格式化的sql文件复制粘贴在E盘的sql.txt中 private static String sqlFile = "E:/sql.txt" ; //如果要将字符串转成sql语句, 将所有"sb.append(" ... ")包裹的sql语句都复制到...
  • Java自动测试常用的工具代码

    万次阅读 2018-05-29 11:03:55
    1:简单的截屏——截全屏   ...   import java.awt.Dimension;... import java.awt.Rectangle;... import java.awt.Robot;... import java.awt.Toolkit;... import java.awt.image.Buffer...
  • 在终端输入命令:hadoop namenode -format进行格式化的时候会出现下面这种错误: java.io.IOException: Cannot create directory /opt/hadoop-1.2.1/tmp/dfs/name/current 原因应该是权限不够无法再目录内新建...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 312,410
精华内容 124,964
关键字:

java 格式化路径

java 订阅