package tirateima.gui.arquivos; import java.io.BufferedReader; import java.io.IOException; import java.io.Writer; /** * Modela um leitor, que lê dado correspondente de um * arquivo texto. * * @author Luciano Santos */ public interface IDataReader { /** * Lê os dados do arquivo e altera internamente. * * @param r Fonte dos dados. * * @return 0, se tudo ocorreu bem, -1, se atingiu * o final do arquivo. * * @throws IOException Se algum erro de IO ocorrer * ou o registro estiver incompleto no arquivo. */ public int readData(BufferedReader r) throws IOException; /** * Grava os dados da variável no arquivo. * * Usar com cuidado! O dado pode ter um valor variável e, * portanto, os registros que vierem depois podem ficar * corrompidos. O ideal é só escrever no final do arquivo. * * @param w Stream de escrita para o arquivo. * @throws IOException */ public void writeData(Writer w) throws IOException; }