Duvida: método readLine de bufferereader

olá pessoal,

tenho uma duvida que aparentemente é básica. Quando faço readline, quando que termina uma linha??? quando contém um “/n”, ou se meu arquivo for um txt ele identificaria o final da linha?

tipo:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

se eu fizesse readline, ele leria a´s e b´s ou a depois b???

readLine lê até o primeiro grupo “\r\n” (no caso do Windows) ou “\n” (no caso do Unix" e retorna a linha, sem o terminador.

Então ele lê:

String linha;
BufferedReader = …;
linha = br.readLine(); // lê “aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa”
linha = br.readLine(); // lê “bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb”

eu entendi o que quis dizer mas acho que não fui claro, vou ser direto, em um .txt, ou qualquer arquivo de texto que vc faça na hora não existe os \n ou \r quando o abre, a não ser que isso fique invisivél ao usuário, isso existe em um .txt ou arquivo de texto em geral???

Todos os arquivos texto são compostos de linhas que são separados por “\r\n” (Windows) ou “\n” (Unix) ou “\r” (MacOS, versões anteriores à X).

(Acho que em mainframes há arquivos-texto cujas linhas têm tamanho fixo e não usam separadores, algo que se chama LRECL, mas isso é coisa de mainframe e de qualquer maneira, quando você usa Java de mainframe as linhas devem ser automaticamente convertidas para o formato Unix.)

Se você usa o método printLn, por exemplo, está gravando automaticamente esse “\r\n”, ou “\n”.

cara valeu mesmo, isso as vezes confunde, brigadão.