Vous êtes sur la page 1sur 3

public class database_class {

private static function_class fc=new function_class();


public static String Separator_record ="~";
public static String Separator_column="#";
private static String DataBuffer="";
private static boolean DatabaseIsOpen;
private static String OpenedDatabase;
//private static String Record[];
public static enum hasilCekID{
ada,tidak_ada;
}
public static enum hasilProsesData{
sukses,gagal,id_sudah_ada,id_tidak_ditemukan
}
//-------------------------------------public static int GetIndexID(String ID){
for (int i =0;i<= RecordCount();i++){
if (ID.equals(GetValue(i, 0))){
return i;
}
}
return -1;
}
public static void CreateDatabase(String DatabaseName){
fc.WriteFile(DatabaseName, "");
OpenDatabase(DatabaseName);
}
public static String GetDatabaseName(){
return OpenedDatabase;
}
private static String[] RecordTemp(){
return DataBuffer.split(Separator_record);
}
public static String[] GetRecord(int RecordIndex){
return RecordTemp()[RecordIndex].split(Separator_column)
;
}
public static String[] getRecordAll(){
return RecordTemp();
}
public static boolean OpenDatabase(String DatabaseName){
DataBuffer=fc.ReadFile(DatabaseName);
if (DataBuffer!=fc.HasilError){
OpenedDatabase=DatabaseName;
DatabaseIsOpen=true;
return true;
}else{
OpenedDatabase="";
DatabaseIsOpen=false;
return false;
}
}
public static int RecordCount(){
if(DataBuffer.trim().equals("")){
return 0;
}
return RecordTemp().length-1;
}
public static String GetValue(int RecordIndex,int ColumnIndex){

String hs;
try {
hs=GetRecord(RecordIndex)[ColumnIndex];
} catch (Exception e) {
hs=fc.HasilError;
}
return hs;
}
public static hasilCekID CekID(String ID){
for (int i =0;i<= RecordCount();i++){
if (ID.equals(GetValue(i, 0))){
return hasilCekID.ada;
}
}
return hasilCekID.tidak_ada;
}
public static void CloseDatabase(){
OpenedDatabase="";
DatabaseIsOpen=false;
DataBuffer="";
}
public static boolean TambahData(
String ID,String NamaGames,int Jumlah,long Harga,String Kategori
){
String newData=ID+Separator_column+
NamaGames+Separator_column+
Jumlah+Separator_column+
Harga+Separator_column+
Kategori+ Separator_record ;
if (fc.WriteFile(GetDatabaseName(), DataBuffer+newData))
{
OpenDatabase(OpenedDatabase);
return true;
}else{
return false;
}
}
public static hasilProsesData UbahData(String IDLama,
String IDBaru,String NamaGamesBaru,int JumlahBaru,int Ha
rgaBaru,String KategoriBaru){
int indexRecord =GetIndexID(IDLama);
if (indexRecord==-1){
return hasilProsesData.id_tidak_ditemukan;
}
if (IDLama!=IDBaru){
if (CekID(IDBaru)==hasilCekID.ada){
return hasilProsesData.id_sudah_ada;
}
}
//----------String Rc[]=GetRecord(indexRecord);
String newData=IDBaru+Separator_column+
NamaGamesBaru+Separator_column+
JumlahBaru+Separator_column+
HargaBaru+Separator_column+
KategoriBaru+Separator_record;
String oldData=
Rc[0]+Separator_column+ //ID
Rc[1]+Separator_column+ //Nama Barang

Rc[2]+Separator_column+ //Jumlah Barang


Rc[3]+Separator_column+ //Harga Barang
Rc[4]+Separator_record ;//lokasibarangne
w
DataBuffer=DataBuffer.replace(oldData, "[NEW_DATA]");
DataBuffer=DataBuffer.replace("[NEW_DATA]", newData);
if (fc.WriteFile(GetDatabaseName(), DataBuffer)){
OpenDatabase(OpenedDatabase);
return hasilProsesData.sukses;
}else{
return hasilProsesData.gagal;
}
}
public static hasilProsesData HapusData(String ID){
int indexRecord =GetIndexID(ID);
if (indexRecord==-1){
return hasilProsesData.id_tidak_ditemukan;
}
String Rc[]=GetRecord(indexRecord);
String oldData=
Rc[0]+Separator_column+ //ID
Rc[1]+Separator_column+ //Nama Barang
Rc[2]+Separator_column+ //Jumlah Barang
Rc[3]+Separator_record ; //Harga Barang
DataBuffer=DataBuffer.replace(oldData, "");
if (fc.WriteFile(GetDatabaseName(), DataBuffer)){
OpenDatabase(OpenedDatabase);
return hasilProsesData.sukses;
}else{
return hasilProsesData.gagal;
}
}
}

Vous aimerez peut-être aussi