Interview Question
Country: India
Interview Type: Written Test
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Class1 {
public static void main(String[] args) throws FileNotFoundException {
// TODO Auto-generated method stub
File file = new File("C:\\Users\\yugandharr\\Desktop\\sample.txt");
Scanner sc=new Scanner(file);
String str="";
int n=10;
while(sc.hasNext()){
str=sc.nextLine()+"\n"+str;
}
System.out.println(str);
String[] LastN= str.split("\n",n);
for(int i=n-1;i>=0;i--){
System.out.println(LastN[i]);
}
}
}
Have two pointers i and k. increment k from start till end but start incrementing i when k reaches N.
Once the file reading is completed, start printing the lines pointed by i till k-1.
package com.project.euler;
import java.io.File;
import java.io.RandomAccessFile;
import java.util.ArrayList;
import java.util.List;
public class FileReader {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
RandomAccessFile raf = new RandomAccessFile(new File("C:\\GameDevelopment\\eclipse\\artifacts.xml"), "r");
List<String> lines = new ArrayList<String>();
int N = 10;
int i=0,k=0;
String str;
while((str = raf.readLine())!=null){
if(k>=N){
i++;
}
lines.add(str);
k++;
}
while(i<k){
System.out.println(lines.get(i++));
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package crap;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;
public class Printnthline {
public static void main(String args[]) throws IOException {
String line;
int count = 0;
LineNumberReader lnr = new LineNumberReader(new FileReader(
"C:/Users/vinisha/Desktop/file.txt"));
lnr.skip(Long.MAX_VALUE);
System.out.println(lnr.getLineNumber());
int value = lnr.getLineNumber();
BufferedReader reader = new BufferedReader(new FileReader(
"C:/Users/vinisha/Desktop/file.txt"));
while ((line = reader.readLine()) != null) {
// line = reader.readLine();
count++;
if (value+1 == count) {
System.out.println("line:" + line);
}
}
}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class Test {
public static void main(String[] args) throws IOException{
File f = new File("D:/New/Myfile.txt");
FileInputStream fs = new FileInputStream(f);
int c;
while((c = fs.read())!=-1)
{
System.out.print((char)c);
}
fs.close();
}
}
very simple programe
import java.io.*;
public class fic {
public static void main(String[] args) throws IOException {
FileInputStream fi=new FileInputStream("D:/vamsi.txt");
InputStreamReader is=new InputStreamReader(fi);
BufferedReader bf=new BufferedReader(is);
while(bf.ready()){
String st=bf.readLine();
System.out.println(st);
}
}
}
N == N ?
- summitzf June 28, 2014