Sam Ramezanli
Sam Ramezanli

Reputation: 1068

Java read file and send in the server

I need to read contents of a file as a server, and then send the read data file, for the client so the client print it out on the Client terminal. The problem is that I can't find a way or method to read a txt file from the current directory which my java file and txt file are existed. Please help me.

Upvotes: 0

Views: 5680

Answers (3)

Yagnesh Agola
Yagnesh Agola

Reputation: 4639

There are many ways to read text file or file in java. It depend on you to that in which format you need to pass your file content to client side.

Here are some method to reading file in java.
1. Using BufferedReader class

 BufferedReader input =  new BufferedReader(new FileReader(aFile));
 String line = null; //not declared within while loop
 while (( line = input.readLine()) != null){
      String curLine =  line;
      //Process line
  }

2.Using Apache Common IOUtils with the class IOUtils.toString() method.

FileInputStream inputStream = new FileInputStream("FILEPATH/FILENAME");
try {
    String everything = IOUtils.toString(inputStream);
} finally {
    inputStream.close();
}  

3.Using the Scanner class in Java and the FileReader

Scanner in = new Scanner(new FileReader("FILENAME/FILEPATH"));  
while (scanner.hasNextLine()){
    //process each line in some way
    String line = scanner.nextLine();
 }  

Scanner has several methods for reading in strings, numbers, etc...

4.In JAVA 7 this is the best way to simply read a textfile

new String(Files.readAllBytes(...))
or Files.readAllLines(...)

Path path = Paths.get("FILENAME");
List<String> allLines = Files.readAllLines(path, ENCODING);

Please refer this link for more onfomation.

Upvotes: 4

Devavrata
Devavrata

Reputation: 1785

You can read file by using BufferedReader.

File file=new File("filepath");
BufferedReader br=new BufferedReader(new FileReader(file)); //Here you create an object of bufferedreader which file read through filereader
String data=br.readLine();
while(data!=null)
{
    System.out.println(data);  // Writing in the console
    data=br.readLine();
 }

This will taking input from file and giving output to console.If you want it write in other file then use BufferedWriter.

File out=new File("outputfilepath");
BufferedWriter bw=new BufferedWriter(new FileWriter(out));

simply us bw.write() instead of System.out.println();.

Upvotes: 0

Jaison
Jaison

Reputation: 132

You can use BufferedReader to read from a txt file.

BufferedReader br = new BufferedReader(new FileReader(fileName));
String line = br.readLine();

here fileName is a string that contain your absolute file name. eg : fileName = "C:\temp\test.txt";

Upvotes: 0

Related Questions