前兩天用sharedpreference實現了儲存使用者歷史資訊,當使用者再次登入的時候在autocompletetextview(仿google搜尋自動提示框)中顯示歷史使用者資訊。
這次使用者資訊是通過xml儲存的,其中比較中要的包括了xml資料的生成和xml資料的解析,以及生成apk私有資料。
xml資料生成:在將使用者資訊儲存成xml資料前,我們應該先了解乙個非常重要的類xmlserializer,這個類幫助我們將需要儲存成xml資料的資訊進行序列化。
**
public
string writetostring(list
<
userinfo
>
users)
serializer.endtag(
"",
"users");
//關閉文件
serializer.enddocument();
} catch
(illegalargumentexception e)
catch
(illegalstateexception e)
catch
(ioexception e)
return
writer.tostring();
}
將字串儲存為apk的私有檔案
**
public
boolean
writetoxml(context context,string str)
catch
(ioexception e)
} catch
(filenotfoundexception e)
}
xml資料解析
由於使用dom方法需要將整個xml文件載入記憶體中,對系統資源占用比較多,這對記憶體比較緊張的android系統來說,使用dom方法讀取xml文件會有很大的限制。 所以使用sax方法讀取xml,以減少對記憶體資源的占用。
使用sax解析xml資料其實很簡單,無非就是幾個過程,startdocument——startelement——character——endelement——enddocument
startdocument:開始解析xml資料,如果處理的資料很多,在這裡例項化乙個list物件。
startelement:節點元素資料的處理,獲取節點元素的屬性值,往往在這裡對抽象化的物件進行例項化如乙個使用者的資訊userinfo user
character:獲得傑點元素的內容,在這裡專門獲得沒有屬性節點的內容,如cbin
endelement:乙個節點的結束,也就相當於乙個使用者資訊的解析完畢,在這裡將user新增到list中
enddocument:xml資料解析結束 **
publicclass
usershandler
extends
defaulthandler
//開始處理節點,在這裡獲得節點屬性值的(節點屬性)
@override
public
void
startelement(string uri, string localname, string qname, attributes attributes)
throws
saxexception
this
.tagname
=localname;
super
.startelement(uri, localname, qname, attributes);
}//處理沒有屬性的節點(節點內容)
@override
public
void
characters(
char
ch,
intstart,
intlength)
throws
saxexception
elseif(
this
.tagname.equals(
"pwd"))
elseif(
this
.tagname.endswith(
"isremember"))
}super
.characters(ch, start, length);
}@override
public
void
endelement(string uri, string localname, string qname)
throws
saxexception
super
.endelement(uri, localname, qname);
}@override
public
void
enddocument()
throws
saxexception
public
list
<
userinfo
>
getuserlist()
}
表示層與sharedpreferences中實現使用者登入大同小異,無非是乙個登入的邏輯處理
1、載入頁面時,載入xml中資料,將使用者名稱列表繫結autocompletetextview
2、假若從act中選定資料,根據使用者名稱查詢密碼等資訊繫結et、ck;
3、登入成功,是新使用者直接新增,老使用者刪除原有記錄,重新記錄使用者資訊。
android 實現登入使用者資訊儲存 XML
前兩天用sharedpreference實現了儲存使用者歷史資訊,當使用者再次登入的時候在autocompletetextview 仿google搜尋自動提示框 中顯示歷史使用者資訊。這次使用者資訊是通過xml儲存的,其中比較中要的包括了xml資料的生成和xml資料的解析,以及生成apk私有資料。x...
PLSQL配置登入使用者資訊
plsql配置登入使用者資訊 工作中經常使用plsql 作為oracle的客戶端,可能在沒有配置的前提下需要手動的去輸入使用者名稱 密碼 資料庫名等資訊比較繁瑣。其實我們只要在plsql的安裝檔案中設定下就可以很方便的預設定,就像qq的登入一樣。配置檔案 tnsnames.ora 檔案路徑 一般在 ...
Centos 當前登入使用者資訊 w who
w who 顯示當前登入系統的使用者,但w顯示的更為詳細 who 相關引數 預設輸出 使用者名稱 登入終端 登入時間 a 列出所有資訊 b 系統最近啟動日期 m 當前終端資訊,相當於 who am i q 列出當前登入使用者並統計使用者數量 r 顯示當前系統執行級別 u 顯得當前每個使用者的使用者名...