public class IOUtilsReadLinesWithInputStreamExample {

    public static void main(String... args) {
        String fileName = "D:\\data\\sample.txt";
        try(InputStream inputStream = new FileInputStream(fileName)){
            List<String> fileContent = IOUtils.readLines(inputStream, "UTF-8");
            for(String line: fileContent) {
                System.out.println(line);
            }
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
}

        

public void readLinesTest(){
	try{
		InputStream is = new FileInputStream("D://test1.txt");
		List<String> lines = IOUtils.readLines(is);
		for(String line : lines){
			System.out.println(line);
		}
	} catch (FileNotFoundException e) {
		e.printStackTrace();
	} catch (IOException e) {
		e.printStackTrace();
	}
}

        

String value = "This is my string";
 
System.out.println("string before conversion = " + value);
InputStream inputStream = IOUtils.toInputStream(value);
 
try {
    List<String> readLines = IOUtils.readLines(inputStream);
    readLines.forEach(x -> System.out.println("string after conversion = " + x));
} catch (IOException e) {
    e.printStackTrace();
}

        

File file1;
File file2;
InputStream inputStream;
OutputStream outputStream;

// copy one file into another
FileUtils.copyFile(file1, file2);
IOUtils.copy(inputStream, outputStream);

// read a file into a String
String s1 = FileUtils.readFileToString(file1);
String s2 = IOUtils.toString(inputStream);

// read a file into a list of Strings, one item per line
List<String> l1 = FileUtils.readLines(file1);
List<String> l2 = IOUtils.readLines(inputStream);

// put this in your finally() clause after manipulating streams
IOUtils.closeQuietly(inputStream);

// return the list of xml and text files in the specified folder and any subfolders
Collection<File> c1 = FileUtils.listFiles(file1, { "xml", "txt" }, true);

// copy one folder and its contents into another
FileUtils.copyDirectoryToDirectory(file1, file2);

// delete one folder and its contents
FileUtils.deleteDirectory(file1);

        

public LineFile(InputStream in) {
	try {
		lines = IOUtils.readLines(in);
	} catch (Exception e) {
		throw new RuntimeException(e);
	}
}

        

public static Set<SingleInstance> loadData(File file)
        throws IOException
{
    Set<SingleInstance> result = new HashSet<>();

    List<String> lines = IOUtils
            .readLines(new InputStreamReader(new FileInputStream(file), "utf-8"));

    for (String line : lines) {
        if (!line.startsWith("#")) {
            result.add(new SingleInstance(line));
        }
    }

    // make sure there are all instances (minus one for the comment line)
    if (result.size() != (lines.size() - 1)) {
        throw new IllegalStateException("Inconsistent input");
    }

    return result;
}

        

private void setUpDirectories(PluginFileAccess access) throws IOException {
    access.createDirectories(UTIL_DIR_PATH);

    //Iterate over all files in the script list
    List<String> files = IOUtils.readLines(
        getClass().getResourceAsStream(RESOURCE_PATH_BASE + "scripts-list"),
        Charsets.UTF_8
    );
    for (String line : files) {
        if (!line.isEmpty()) {
            //Copy the file into the desired directory
            InputStreamReader input = new InputStreamReader(
                getClass().getResourceAsStream(RESOURCE_PATH_BASE + line)
            );
            BufferedWriter output = access.access(UTIL_DIR_PATH + line);
            IOUtils.copy(input, output);
            input.close();
            output.close();
        }
    }
}


        

private void loadLocaleData(InputStream inputStreamIn) throws IOException
{
    for (String s : IOUtils.readLines(inputStreamIn, Charsets.UTF_8))
    {
        if (!s.isEmpty() && s.charAt(0) != 35)
        {
            String[] astring = (String[])Iterables.toArray(SPLITTER.split(s), String.class);

            if (astring != null && astring.length == 2)
            {
                String s1 = astring[0];
                String s2 = PATTERN.matcher(astring[1]).replaceAll("%$1s");
                this.properties.put(s1, s2);
            }
        }
    }
}

        

public void write() throws Exception {
    String secondString = "second_test_string";
    access.access(targetFileName).appendln(fileContent).close();
    access.access(targetFileName).append(secondString).close();
    assertTrue(targetFile.isFile());
    List<String> result = IOUtils.readLines(new FileInputStream(targetFile));
    assertEquals(fileContent, result.get(result.size() - 2));
    assertEquals(secondString, result.get(result.size() - 1));
}

        

public void validate(String s, String path) throws IOException {
    List<String> lines = IOUtils.readLines(
        getClass().getClassLoader().getResourceAsStream(path),
        "UTF-8"
    );
    List<String> lines2 = Arrays.asList(s.split("\n"));
    for (int i = 0; i < lines.size(); i++) {
        assertEquals(lines.get(i), lines2.get(i));
    }
}        
main