2012-06-27 35 views
3

我目前使用Java ME通過PIM(JSR75 Spec)在設備中提取地址簿(ContactList)字段。如果字段的數據類型是字符串,我在獲取字段的最大長度時遇到問題。我最初以爲在API中有一種方法就像getFieldLength(int fieldId),但很遺憾沒有發現。J2ME中地址簿字段的最大長度

有沒有辦法讓我得到這個?

我需要知道字段的數據長度,因爲我只讀取字段定義本身。不是價值。我需要收集設備中的所有支持的字段。從這些字段中,我需要獲取字段的名稱,數據類型和最大長度。我們將這些信息放到我們的服務器應用程序中用於設備移植。

+1

如果您只使用jsr75從設備讀取數據,您爲什麼需要知道該字段的數據長度?你可以發佈一些代碼嗎? –

+1

我只讀取字段定義本身。不是價值。我需要收集設備中的所有支持的字段。從這些字段中,我需要獲取字段的名稱,數據類型和最大長度。我們將這些信息放到我們的服務器應用程序中用於設備移植。 –

回答

2

檢索字段的最大長度不是PIM API的一部分。

但是,您可以通過嘗試將長度增加的內容寫入字段來解決該問題。

未能寫入內容將引發異常。

對於要測試,寫512個字節,然後1KB,2KB,4KB每場......

我的猜測是,大多數手機將讓你寫你想要的所有數據。

記得在寫入嘗試之間刪除字段。

如果您確實需要對字節進行精確定位,您可以在找到上限後使用二分法。

+0

似乎有道理。我會盡力在我們的項目中做到這一點。謝謝您的幫助。 :) –