如何在Python中用阿拉伯语重命名文件名

时间:2018-09-21 01:51:03

标签: python python-3.x

我有一个脚本可以将文件夹和文件名从英语重命名为另一种语言。到目前为止,此脚本对于从左到右的语言阅读都非常有效。但是,当我使用从右向左阅读的语言(例如阿拉伯语)运行此脚本时,遇到了:

errorFileExistsError: [WinError 183] Cannot create a file when that file already exists

我的文件夹结构如下:

C:\Users\ABC\Desktop\Template\Report Element Snippets\Review. 

在Review文件夹中,我有一个名为Blue Review Note.xml的文件。此xml文件的完整文件路径应为

C:\User\ABC\Desktop\Template\Report Element Snippets\Review\Blue Review Note.xml

我将需要先重命名“报告元素片段”和“审阅”文件夹,然后运行另一个循环以将xml文件重命名为阿拉伯语。

重命名xml文件的代码是:

os.rename(os.path.join(dirpath,file)
os.path.join(dirpath,newfname))

从打印出的路径中我可以看到的问题是os.path.join(dirpath,file)给我:

C:\Users\ABC\Desktop\Template\تقرير قصاصات العنصر\إعادة النظر\Blue Review Note. xml

其中إعادة النظر是“评论”,تقرير قصاصات العنصر是“报告元素摘要”

但是os.path.join(dirpath,newfname)给我:

C:\Users\ABC\Desktop\Template\تقرير قصاصات العنصر\إعادة النظر\ملاحظة مراجعة باللون الأزرق.xml

ملاحظة مراجعة باللون الأزرق.xml用于Blue Review Note.xml

如您所见,join语句在完整路径中将ملاحظةمراجعةباللونالأزرق.xml分为两部分。 ملاحظة مراجعة位没有放置在阿拉伯文路径的开头,并且将文件名保留为باللونالأزرق。xml,但它没有\来分隔xml文件名和تقريرقصاصاتالعنصر文件夹。对我而言,xml文件重命名前后的路径不同,因此Python无法在文件夹上应用重命名。

我只是想知道在使用阿拉伯文件名之前是否有人遇到过此问题?

0 个答案:

没有答案