toExternalResource

@JvmName(name = "create")
expect fun ByteArray.toExternalResource(formatName: String? = null): ExternalResource

创建 ExternalResource. 注意, 返回的 ExternalResource 需要在使用完毕后调用 ExternalResource.close 关闭.

Parameters

fun <Error class: unknown class>.toExternalResource(formatName: String? = null): ExternalResource

打开文件并创建 ExternalResource. 注意, 返回的 ExternalResource 需要在使用完毕后调用 ExternalResource.close 关闭.

将以只读模式打开这个文件 (因此文件会处于被占用状态), 直到 ExternalResource.close.

Parameters


fun <Error class: unknown class>.toExternalResource(formatName: String? = null, closeOriginalFileOnClose: Boolean = true): ExternalResource

创建 ExternalResource. 注意, 返回的 ExternalResource 需要在使用完毕后调用 ExternalResource.close 关闭, 届时将会关闭 RandomAccessFile.

注意:若关闭 RandomAccessFile, 也会间接关闭 ExternalResource.

Parameters

See also

若为 true, 在 ExternalResource.close 时将会同步关闭 RandomAccessFile. 否则不会.


fun <Error class: unknown class>.toExternalResource(formatName: String? = null): ExternalResource

立即使用 FileCacheStrategy 缓存 InputStream 并创建 ExternalResource. 返回的 ExternalResource 需要在使用完毕后调用 ExternalResource.close 关闭.

注意:本函数不会关闭流.

在 Java 获得和使用 ExternalResource 实例

try(ExternalResource resource = ExternalResource.create(file)) { // 使用文件 file
contact.uploadImage(resource); // 用来上传图片
contact.files.uploadNewFile("/foo/test.txt", file); // 或者用来上传文件
}

注意, 若使用 InputStream, 必须手动关闭 InputStream. 一种使用情况示例:

try(InputStream stream = ...) {
try(ExternalResource resource = ExternalResource.create(stream)) {
contact.uploadImage(resource); // 用来上传图片
contact.files.uploadNewFile("/foo/test.txt", file); // 或者用来上传文件
}
}

Parameters

See also


创建 ExternalResource. 注意, 返回的 ExternalResource 需要在使用完毕后调用 ExternalResource.close 关闭.

Parameters