我有一个filePath,我试图从一个字符串中提取它。字符串看起来像:
val myPath: String = "InitialIndexValue/this/is/some/kind/of/path"
val firstIndex = myPath.indexOd('/')
val extractedPath = myPath.substring(firstIndex)
//I am creating a Uri path
val uriPath = Uri.Path./(extractedPath)
这将返回%2F以替换所有“/”。URI路径将返回%2Fthis%2Fis%2Fsome%2Fkind%2Fof%2Fpath。导入为:
import akka.http.scaladsl.model.Uri
import java.nio.file.Path
我的问题是:为什么Uri.Path将“/”替换为“%2F”?是否有其他方法可以处理此问题?TIA
1条答案
按热度按时间lztngnrs1#
URI上的方法
/
。Path是用来将路径区段串连成一个路径。/
的参数是一个区段(例如,“this”、“is”或“some”),而不是整个路径。当区段包含特殊字符时,它们会进行URL编码,例如,字符'/'
会变成"%2F"
,而空格会变成"%20"
。您可能需要使用
Uri.Path
的apply
方法,该方法将给定字符串解析为完整路径: