IUserDefinedFileAttributeView.Read(String, ByteBuffer) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將使用者定義屬性的值讀入緩衝區。
[Android.Runtime.Register("read", "(Ljava/lang/String;Ljava/nio/ByteBuffer;)I", "GetRead_Ljava_lang_String_Ljava_nio_ByteBuffer_Handler:Java.Nio.FileNio.Attributes.IUserDefinedFileAttributeViewInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=26)]
public int Read(string? name, Java.Nio.ByteBuffer? dst);
[<Android.Runtime.Register("read", "(Ljava/lang/String;Ljava/nio/ByteBuffer;)I", "GetRead_Ljava_lang_String_Ljava_nio_ByteBuffer_Handler:Java.Nio.FileNio.Attributes.IUserDefinedFileAttributeViewInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=26)>]
abstract member Read : string * Java.Nio.ByteBuffer -> int
參數
- name
- String
屬性名稱
- dst
- ByteBuffer
目的緩衝區
傳回
讀取的位元組數,可能是零
- 屬性
備註
將使用者定義屬性的值讀入緩衝區。
此方法會將屬性值以位元組序列的形式讀入給定緩衝區,若緩衝區剩餘位元組數不足以讀取完整屬性值,則該方法失敗。 傳送到緩衝區的位元組數為 n,其中 n 是屬性值的大小。 序列中的第一個位元組位於索引 p ,最後一個位元組位於索引 p + n - 1,其中 p 是緩衝區的位置。 返回時緩衝區的位置將 p + n等於;其極限不會改變。
<b>使用範例:</b> 假設我們想讀取一個檔案的 MIME 類型,該檔案以使用者定義的屬性名稱為「user.mimetype」儲存。
UserDefinedFileAttributeView view =
Files.getFileAttributeView(path, UserDefinedFileAttributeView.class);
String name = "user.mimetype";
ByteBuffer buf = ByteBuffer.allocate(view.size(name));
view.read(name, buf);
buf.flip();
String value = Charset.defaultCharset().decode(buf).toString();
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。