如何在读取文件时相互关联属性? RandomAccessFile读取UTF();

时间:2014-10-16 14:51:04

标签: java randomaccessfile

当我使用readUTF()方法读取文件时,控制台输出会分别显示atributtes。例如,我有这段代码:

public void grabarFichero(String clave, String nombre, String edad, String sueldo)
{
    int i;
    String datos[] = new String[4];
    datos[0] = clave;
    datos[1] = nombre;
    datos[2] = edad;
    datos[3] = sueldo;
    try
    {
        rafObj = new RandomAccessFile(fileName, "rw");
        rafObj.seek(rafObj.length());
        for(i=0; i<datos.length; i++)
        {
            rafObj.writeUTF(datos[i]);
        }
    }
}

public void leerFichero()
{
    String clave, nombre, edad, sueldo;
    JTextArea area = new JTextArea();
    try
    {
        rafObj = new RandomAccessFile(fileName, "r");
        rafObj.seek(0);
        rafObj.seek(0);
        while(rafObj.getFilePointer()<rafObj.length())
        {

            System.out.println(rafObj.readUTF());
        }
}

所以,输出是这样的:

AF
Amaro
25
1500
LO
Bea
45
6258

使用RandomAccesFile类是必不可少的,但问题是如果我搜索(&#34; clave:AF&#34;例如),程序必须返回&#34; nombre:Amaro&#34;,&# 34; edad:25&#34;和&#34; sueldo:1500&#34;。 如果我搜索(&#34; clave:LO&#34;),程序必须返回&#34; nombre:Bea&#34;,&#34; edad:45&#34;和&#34; sueldo:6258&#34;。

0 个答案:

没有答案