我有一个hdfs路径 hdfs://host1:8899/path/to/file . 我想脱光衣服 host1 和端口编程。因此,它应该是 hdfs:/path/tofile . 有什么辅助方法可以做到这一点吗?
hdfs://host1:8899/path/to/file
host1
hdfs:/path/tofile
8i9zcol21#
“有没有助手方法可以做到这一点?”不需要花太多的时间来创造你自己的。只需使用基本的string类实用函数 split() , indexOf() , substring() 等等。类似这样的操作(对于java,尽管大多数语言都有这些方法):
split()
indexOf()
substring()
public class TestPath { public static void main(String[] args) throws Exception { String path = "hdfs://localhost:9000/path/to/file"; System.out.println(getPathWithoutHostAndPort(path)); } public static String getPathWithoutHostAndPort(String path) { String[] array = path.split("(//)"); int indexOfFirstSlash = array[1].indexOf("/"); StringBuilder builder = new StringBuilder(); builder.append(array[0]).append(array[1].substring(indexOfFirstSlash)); return builder.toString(); } }
结果: hdfs:/path/to/file
hdfs:/path/to/file
1条答案
按热度按时间8i9zcol21#
“有没有助手方法可以做到这一点?”
不需要花太多的时间来创造你自己的。只需使用基本的string类实用函数
split()
,indexOf()
,substring()
等等。类似这样的操作(对于java,尽管大多数语言都有这些方法):
结果:
hdfs:/path/to/file