`

空格问题20%

 
阅读更多
import java.io.BufferedReader;  
import java.io.File;  
import java.io.FileInputStream;  
import java.io.FileNotFoundException;  
import java.io.IOException;  
import java.io.InputStreamReader;  
import java.net.URL;  
  
public class GetPath {  
  
    public static void getPath()  
    {  
        //方式一  
        System.out.println("方式一");  
        System.out.println(System.getProperty("user.dir"));  
        //方式二  
        System.out.println("方式二");  
        File directory = new File("");//设定为当前文件夹  
        try{  
            System.out.println(directory.getCanonicalPath());//获取标准的路径  
            System.out.println(directory.getAbsolutePath());//获取绝对路径  
        }catch(Exception e)  
        {  
            e.printStackTrace();  
        }  
        //方式三  
        System.out.println("方式三");  
        System.out.println(GetPath.class.getResource("/"));  
        System.out.println(GetPath.class.getResource(""));  
        //方式4  
        System.out.println("方式四");  
        System.out.println(GetPath.class.getClassLoader().getResource(""));  
        System.out.println(GetPath.class.getClassLoader().getResource("source.xml"));  
    }  
    /** 
     * @param name   文件名  不包含路径 
     */  
    public static  String getSrcPath(String name)  
    {  
        String result=null;  
        URL urlpath = GetPath.class.getClassLoader().getResource(name);   
        String path=urlpath.toString();  
        //remove the head "file:",if it exists  
        if(path.startsWith("file"))  
        {  
            path=path.substring(5);  
        }  
        path.replace("/", File.separator);  
        result=path;  
        return result;  
    }  
    // filename 文件名 不包含路径  
    // ...args  文件夹名      可以输入多个文件夹名参数  
    public static String getParallelPath(String filename,String ...args)  
    {  
        String pre=System.getProperty("user.dir");  
        String path=pre;  
        for(String arg:args)  
        {  
            path+=File.separator+arg;  
        }  
        path+=File.separator+filename;  
        if(path.startsWith("file"))  
        {  
            path=path.substring(5);  
        }  
        path.replace("/", File.separator);  
        return path;  
    }  
    public static void readFile(String filepath)  
    {  
        File file=new File(filepath);  
        try {  
            InputStreamReader sr=new InputStreamReader(new FileInputStream(file));  
            BufferedReader br=new BufferedReader(sr);  
            String line=null;  
            while((line=br.readLine())!=null)  
            {  
                System.out.println(line);  
            }  
              
        } catch (FileNotFoundException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        } catch (IOException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        }  
    }  
    public static String getPackagePath(String filename)  
    {  
        String result=null;  
        URL urlpath=GetPath.class.getResource("");  
        String path=urlpath.toString();  
        if(path.startsWith("file"))  
        {  
            path=path.substring(5);  
        }  
        path.replace("/", File.separator);  
        result=path+filename;  
        return result;  
    }  
    //获取WebRoot目录  
    public static String getWebRootPath()  
    {  
        URL urlpath=GetPath.class.getResource("");  
        String path=urlpath.toString();  
        if(path.startsWith("file"))  
        {  
            path=path.substring(5);  
        }  
        if(path.indexOf("WEB-INF")>0)  
        {  
            path=path.substring(0,path.indexOf("WEB-INF")-1);  
        }  
        path.replace("/", File.separator);  
        return path;  
    }  
    //webroot  WebRoot目录  
    //filename  文件名  
    //...args   文件名所在文件夹,多个参数输入  
    public static String getWebRootFilepath(String webroot,String filename,String ...args)  
    {  
        String pre=webroot;  
        String path=pre;  
        for(String arg:args)  
        {  
            path+=File.separator+arg;  
        }  
        path+=File.separator+filename;  
        if(path.startsWith("file"))  
        {  
            path=path.substring(5);  
        }  
        path.replace("/", File.separator);  
        return path;  
    }  
    public static void main(String[] args) {  
        // TODO Auto-generated method stub  
//      GetPath.getPath();  
//      //1 test  
//      System.out.println(GetPath.getSrcPath("source.xml"));  
//      GetPath.readFile(GetPath.getSrcPath("source.xml"));  
//      //2 test  
        System.out.println(GetPath.getParallelPath("source.xml", "my file"));  
        GetPath.readFile(GetPath.getParallelPath("source.xml", "my file"));  
//      //3 test  
        System.out.println(GetPath.getPackagePath("source.xml"));  
        GetPath.readFile(GetPath.getPackagePath("source.xml"));  
          
    }  
  
}  

 

分享到:
评论

相关推荐

    往字符串空格里面加入%20

    往字符串空格里面加入%20

    java调用winrar生成压缩文件路径有空格问题

    ### Java调用WinRAR生成压缩文件路径有空格问题解决方案 在进行文件处理时,我们经常需要对文件进行压缩操作以便于传输或者节省存储空间。Java作为一种常用的开发语言,在进行此类操作时通常会通过调用外部命令的...

    当fscanf()遇到空格怎么办?

    标题中的问题就是这种情况的一个例子,当尝试使用`fscanf()`读取包含空格的字符串时,它只会读取到第一个空格前的部分。 在给出的示例代码中,用户输入"big baby",然后将其写入文件"data1.txt"。之后,尝试使用`...

    利用JS把URL地址栏%20、%55之类编码转成中文字符

    URL中的某些字符因为具有特殊含义或不被支持,会被转换为十六进制形式的百分号编码(Percent-Encoding),例如空格通常被编码为"%20",而"ü"则可能被编码为"%55"。本文将深入探讨如何使用JavaScript(简称JS)来...

    替换空格(简单经典)1

    标题 "替换空格(简单经典)1" 描述了一个编程问题,要求在给定的字符串中将所有空格替换为 "%20"。这个问题常见于处理URL编码,因为URL不支持空格,所以通常用"%20"来表示空格。这是一个在LeetCode等在线编程平台上...

    vb去除前后空格trim()函数使用

    总之,`Trim()`函数是VB中处理字符串空格问题的一个基础工具,对于提升代码的整洁性和数据处理的准确性都有很大帮助。结合其他字符串处理函数,你可以更好地控制和格式化字符串内容。在实际项目开发中,理解并熟练...

    swift-url分类解决URL里面的空格中文及其他特殊字符问题

    例如,空格会被编码为"%20",中文字符则会根据其Unicode编码进行转换。 现在,让我们创建一个名为`URL+Encoding.swift`的文件,用来扩展URL类并添加处理特殊字符的方法: ```swift import Foundation extension ...

    ASP.NET HTML移除空格

    3. **使用Server.HtmlEncode()和Server.HtmlDecode()**:这两个方法可以对字符串进行编码和解码,编码后空格会转换成`%20`,在页面渲染时再解码,但这样并不能真正减少HTML的字节数,仅用于防止XSS攻击。 4. **启用...

    微机原理8086找空格程序

    它有20个寄存器,其中通用寄存器(如AX, BX, CX, DX)在查找空格程序中起到关键作用,用于暂存数据或地址。 2. **汇编语言**:汇编语言是与8086指令集相对应的编程语言。每个汇编指令对应一条机器指令,比如`MOV`...

    彻底解决Asp.net 文件下载时文件名的中文乱码和空格异常全球性技术难题

    在IE中,空格会被编码为`+`,而在其他一些浏览器中,如Opera,空格可能需要编码为`%20`才能正确解析。因此,需要根据浏览器类型来选择合适的编码方式。 2. **中文字符编码**:对于非ASCII字符,如中文字符,使用`...

    url参数中有+、空格、=、%、&、#等特殊符号的问题解决

    2. 空格:在URL中,空格是不被允许的,但可以通过编码为%20来传递。 3. =:用于分隔参数名和参数值,例如`key=value`。 4. %:在URL编码中,%是前缀,后面跟随两位十六进制数,用于表示非ASCII字符或特殊字符。 5. &...

    文本中的空格变逗号.zip

    例如,`char str[20] = "Hello"`声明了一个包含20个元素的字符数组,并初始化为"Hello"。 3. **字符串操作函数**:C语言标准库提供了一些字符串处理函数,如`strlen()`用于获取字符串长度,`strcpy()`用于复制字符...

    汇编语言统计字符串中空格数

    标题中的“汇编语言统计字符串中空格数”是指在汇编语言编程中,编写一个程序来计算一个给定字符串中空格字符的数量。描述提到这是个人自学过程中的练习,表明这是一个学习和验证汇编语言技能的任务。 在给定的代码...

    C++_C++_读取txt文档_txt内容读取_按空格分隔_按逗号分隔_

    在C++编程中,读取txt文档是一项基本且常见的任务,尤其在处理数据或...当然,更复杂的情况可能需要使用更高级的数据解析库,如 Boost.Spirit 或 C++20 的std::ranges库,但基础的I/O操作始终是所有解决方案的核心。

    计算机软件-商业源码-20 去掉字符串中的空格.zip

    综上所述,"计算机软件-商业源码-20 去掉字符串中的空格.zip"中的源码很可能是用不同的编程语言实现的上述方法,为开发者提供了一种便捷的方式去处理字符串中的空格问题。通过对这些源码的学习,我们可以深入理解...

    使用Post提交时须将空格转换成加号的解释

    总结来说,当使用POST方法提交包含空格的数据时,需要先使用`encodeURIComponent`编码,将空格转换为`%20`,然后再将`%20`替换为加号(+)。这样做是为了遵循`application/x-www-form-urlencoded`的规范,使得后台...

    C++ 读取txt数据(带空格数据)测试数据

    此外,如果数据量大或格式复杂,可以考虑使用更高级的库,如`Boost.Spirit`或`C++20`引入的`std::ranges`。 总的来说,理解和掌握如何在C++中读取和处理带空格的TXT数据是一项基础但关键的技能,它有助于你在各种...

    手机号/银行卡号插入空格格式

    银行卡号则通常更长,由16到20位数字构成,如常见的 Visa 或 MasterCard 卡。为了提高可读性,银行系统通常使用每四位数字后加一个空格的方式,例如"1234 5678 9012 3456"。这样的格式不仅方便用户核对,也有助于...

    C++中带空格字符串的输入问题解决

    本文将深入探讨C++如何解决带空格字符串的输入问题。 通常,C++标准库中的`std::cin`用于从用户那里获取输入。然而,当处理字符串时,`cin`有一个特性,即它会遇到空格就停止读取,这可能导致丢失后续的字符。例如...

Global site tag (gtag.js) - Google Analytics