как применение Буфферединпутстреам Стрингбуильдер с файлом txt в java

Я нуждаюсь в том, чтобы открыть файл и отрезать сегмент текста (в форме array). Я говорю отрезать, потому что я хочу, чтобы он был удален из файла.

Я сделал что-то похожим с одними url, и я хотел бы знать, как он был бы с файлом. и если рекомендуемый тот же метод. Это код:

URL url = new url("http:www.web.com";
URLConnection urlc = url.openConnection();

BufferedInputStream buffer = new 
BufferedInputStream(urlc.getInputStream());

StringBuilder builder = new StringBuilder();
int byteRead;
while ((byteRead = buffer.read()) != -1) {
    builder.append((char) byteRead);
}

buffer.close();
String urldescargada = "";
urldescargada = (builder.toString());

Однажды сделанный это уже я могу работать, с indexOf и split мне удается отделить то, в чем я нуждаюсь. То, что я не знаю, так это, как делать это в файле, и что он удалил то, что я извлек.

0
задан 17.03.2019, 16:25
1 ответ

Чтобы отрезать informaciГіn в файле необходимо читать это, сохранять то, в чем ты нуждаешься в переменной (контент, который было нужно отрезать) и то, что queres, которое estГ© в файле в другой (оставшаяся часть файла). AquГ - я оставляю тебе пример:

File file = new File("archivo.txt");
BufferedInputStream buffer = new BufferedInputStream(new FileInputStream(file));        
StringBuilder builderCortado = new StringBuilder();     //string que queres guardar
StringBuilder builderNoCortado = new StringBuilder();   //resto del archivo
boolean cortar = true;
int byteRead;
while ((byteRead = buffer.read()) != -1) {
    if(byteRead == '\n') {      //deja de cortar al detectar un salto de linea
        cortar = false;
        continue;               //para que el salto de linea no esté en el string final
    }
    if(cortar == true) {
        builderCortado.append((char) byteRead);
    }else {
        builderNoCortado.append((char) byteRead);
    }
}
buffer.close(); 
//escribis el resto del archivo
FileWriter out = new FileWriter(file);  
out.write(builderNoCortado.toString());
out.close();
String urldescargada = "";
urldescargada = (builderCortado.toString());

Надеялся, что он подает тебе

0
ответ дан 02.12.2019, 05:33