Java Kotlin:如何获取文件&x27;s(图像)创建日期?

Java Kotlin:如何获取文件&x27;s(图像)创建日期?,java,android,kotlin,Java,Android,Kotlin,我不能确切地理解我在哪里犯了一个愚蠢的错误。我将非常感谢你的建议 val f:File = File("drawable/paystack_mark.png") // val path:Path = Paths.get("drawable/new_logo.jpg") val attr = Files.readAttributes<BasicFileAttributes>(file.toPath(), BasicFileAttributes::class.java) val f:

我不能确切地理解我在哪里犯了一个愚蠢的错误。我将非常感谢你的建议

val f:File = File("drawable/paystack_mark.png")
// val path:Path =  Paths.get("drawable/new_logo.jpg")
val attr = Files.readAttributes<BasicFileAttributes>(file.toPath(), BasicFileAttributes::class.java)
val f:File=File(“drawable/paystack\u mark.png”)
//val path:path=path.get(“drawable/new_logo.jpg”)
val attr=Files.readAttributes(file.toPath(),BasicFileAttributes::class.java)

val-path:path=path.get(“drawable/new_logo.jpg”)
val attr=Files.readAttributes(路径,BasicFileAttributes::class.java)

我不能确切地理解我在哪里犯了一个愚蠢的错误。非常感谢您的建议

您的第二个示例运行良好,我已在windows上使用.png文件的有效路径进行了尝试

val f:File = File("drawable/paystack_mark.png")
// val path:Path =  Paths.get("drawable/new_logo.jpg")
val attr = Files.readAttributes<BasicFileAttributes>(file.toPath(), BasicFileAttributes::class.java)
我就是这样使用它的(刚刚打印了
attr.creationTime()
):


请记住,您正在为Android编写代码,因此可能路径的
字符串
-版本不同(请参阅windows计算机上路径的反斜杠)。

您的第二个示例运行良好,我已在windows上使用.png文件的有效路径进行了尝试

我就是这样使用它的(刚刚打印了
attr.creationTime()
):


请记住,您是为Android编写代码的,因此可能路径的
字符串版本不同(请参阅windows计算机上路径的反斜杠)。

这对我很有用,谢谢

//从gallary中读取图像,或者您可以给出直接路径

        getImage()// read image
        val contentURI = data?.getData()
        var imageFile = File(contentURI?.let { getRealPathFromURI(it) })
        val lastModifiedDate: Date =  Date(imageFile.lastModified())
        println("creation time: " + attr.creationTime())
//获取本机URI函数

private fun getRealPathFromURI(contentURI: Uri): String {
    var getApplicationContext = getContext()?.getContentResolver();
    var result: String
    var cursor: Cursor? =
        context?.getContentResolver()?.query(contentURI, null, null, null, null);
    if (cursor == null) { // Source is Dropbox or other similar local file path
        result = contentURI.getPath().toString();
    } else {
        cursor.moveToFirst();
        val idx: Int = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);
        result = cursor.getString(idx);
        cursor.close();
    }
    return result;
}

这是我的工作,谢谢你

//从gallary中读取图像,或者您可以给出直接路径

        getImage()// read image
        val contentURI = data?.getData()
        var imageFile = File(contentURI?.let { getRealPathFromURI(it) })
        val lastModifiedDate: Date =  Date(imageFile.lastModified())
        println("creation time: " + attr.creationTime())
//获取本机URI函数

private fun getRealPathFromURI(contentURI: Uri): String {
    var getApplicationContext = getContext()?.getContentResolver();
    var result: String
    var cursor: Cursor? =
        context?.getContentResolver()?.query(contentURI, null, null, null, null);
    if (cursor == null) { // Source is Dropbox or other similar local file path
        result = contentURI.getPath().toString();
    } else {
        cursor.moveToFirst();
        val idx: Int = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);
        result = cursor.getString(idx);
        cursor.close();
    }
    return result;
}

当前行为是什么(错误?没有输出?错误输出?)以及所需的行为是什么?错误:java.lang.NoSuchMethodError:没有虚拟方法toPath()Ljava/nio/file/Path;Ljava/io/File类中;或者它的超类(声明'java.io.File'出现在/system/framework/core libart.jar中),这样第二个示例就不会抛出异常了?它能做什么呢?是的,我不明白,你能给我看一个小例子来读取图像表单kotlin的属性吗?你使用的文件路径无效。drawable中的文件是资源。我认为,即使您使用valig资源代码,也没有文件日期。不确定。当前的行为是什么(错误?没有输出?错误输出?)以及所需的行为是什么?错误:java.lang.NoSuchMethodError:没有虚拟方法toPath()Ljava/nio/file/Path;Ljava/io/File类中;或者它的超类(声明'java.io.File'出现在/system/framework/core libart.jar中),这样第二个示例就不会抛出异常了?它能做什么呢?是的,我不明白,你能给我看一个小例子来读取图像表单kotlin的属性吗?你使用的文件路径无效。drawable中的文件是资源。我认为,即使您使用valig资源代码,也没有文件日期。不确定.btn1.setOnClickListener{val path:path=path.get(“E:\\image\\one.jpg”)val attr=Files.readAttributes(path,BasicFileAttributes::class.java)Log.d(“tettettete:”,“ssss${attr.creationTime())println(“创建时间:+attr.creationTime())//PickimageFromGallery()}没关系,或者我可以单独打电话吗method@MaheshGv对不起,这个代码注释是什么意思?@MaheshGv我想你需要为Android设备上的文件使用URI,但我不确定。什么坏了?
“E:\\image\\one.jpg”
。这是一个Windows路径。Android设备上不存在。Android也不能处理驱动器号。是的,如何添加PickimageFromGallery()意味着移动画廊图像路径到路径。get(“此处”)你能不能请我喜欢btn1.setOnClickListener{val path:path=path.get(“E:\\image\\one.jpg”)val attr=Files.readAttributes(path,BasicFileAttributes::class.java)Log.d(“tettette:,“ssss${attr.creationTime()}”)println(“创建时间:+attr.creationTime())//PickimageFromGallery()}这是可以的,还是可以单独调用method@MaheshGv对不起,这个代码注释是什么意思?@MaheshGv我想你需要为Android设备上的文件使用URI,但我不确定。什么坏了?
“E:\\image\\one.jpg”
。这是一个Windows路径。Android设备上不存在。Android也不能处理驱动器号。是的,如何添加PickimageFromGallery()意味着移动多媒体资料的图像路径到路径。获取(“此处”)你能告诉我需要什么吗