Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 重命名写入的CSV文件Spark抛出错误“;路径必须是绝对路径";-Azure数据湖_Python_Scala_Apache Spark_Databricks_Azure Data Lake - Fatal编程技术网

Python 重命名写入的CSV文件Spark抛出错误“;路径必须是绝对路径";-Azure数据湖

Python 重命名写入的CSV文件Spark抛出错误“;路径必须是绝对路径";-Azure数据湖,python,scala,apache-spark,databricks,azure-data-lake,Python,Scala,Apache Spark,Databricks,Azure Data Lake,我尝试了中描述的解决方案,但遇到以下错误“java.lang.IllegalArgumentException:路径必须是绝对的”。我怎样才能修好它?它可以是scala或Python代码。谢谢:) 产出: file path: mnt/datalake/MyTable/ file name: part-00000-tid-9118XXX-c000.csv 错误 试试这个: import org.apache.hadoop.fs._ import org.apache.hadoop.fs.{Fi

我尝试了中描述的解决方案,但遇到以下错误“java.lang.IllegalArgumentException:路径必须是绝对的”。我怎样才能修好它?它可以是scala或Python代码。谢谢:)

产出:

file path: mnt/datalake/MyTable/
file name: part-00000-tid-9118XXX-c000.csv
错误

试试这个:

import org.apache.hadoop.fs._
import org.apache.hadoop.fs.{FileSystem, Path}
val fs = FileSystem.get(sc.hadoopConfiguration)
val filePath = "dbfs:/FileStore/tables/part_00000-6a99e/"
val fileName = fs.globStatus(new Path(filePath))(0).getPath.getName
fs.rename(new Path(filePath+fileName), new Path(filePath+"file.csv"))

哇!它工作得很好!谢谢:D这是我定制它的方式:import org.apache.hadoop.fs.\uimport org.apache.hadoop.fs.{FileSystem,Path}val fs=FileSystem.get(sc.hadoopConfiguration)val filePath=“dbfs:/mnt/datalake/MyTable/”val fileName=fs.globStatus(新路径(filePath+“part*”)))(0.getPath.getName打印(“文件路径:”+filePath”)打印(“文件名:+fileName)fs.rename(新路径(filePath+fileName)、新路径(filePath+“file.csv”))完美,你能接受答案吗?投票是的,我已经点击了,但我收到了信息“感谢反馈!记录了声誉低于15的人的投票,但不要更改公开显示的帖子分数。”我的声誉已经是10,所以应该很快就会出现。我刚刚接受了它:)现在我有22个声誉,所以我也投票了:)
java.lang.IllegalArgumentException: Path must be absolute: mnt/datalake/MyTable/part-00000-tid-9118XXXXc000.csv
import org.apache.hadoop.fs._
import org.apache.hadoop.fs.{FileSystem, Path}
val fs = FileSystem.get(sc.hadoopConfiguration)
val filePath = "dbfs:/FileStore/tables/part_00000-6a99e/"
val fileName = fs.globStatus(new Path(filePath))(0).getPath.getName
fs.rename(new Path(filePath+fileName), new Path(filePath+"file.csv"))