如何在Kotlin中获取不带扩展名的文件名

Nin*_*off 4 io kotlin

从字符串或文件对象获取文件名,删除扩展名的最佳方法是什么?

小智 9

我无法将其作为评论发布,因此我必须将其作为单独的答案发布。

您的解决方案会起作用,但似乎有点矫枉过正。这个函数的实现只需要调用substringBeforeLast(".")文件名,所以我建议使用这个函数。默认情况下,如果字符串没有点,它将返回完全相同的字符串,但您可以通过提供第二个参数来覆盖此行为。


Nin*_*off 6

我发现创建File对象是实现此目的的直接方法。不会在磁盘上创建实际文件

File("myFile.txt").nameWithoutExtension
Run Code Online (Sandbox Code Playgroud)

结果:“ myFile”