logo

Како читати ЦСВ датотеку у Јави

Тхе ЦСВ означава Вредности раздвојене зарезима . То је једноставан формат датотеке који се користи за складиштење табеларних података у једноставном текстуалном облику, као што је табела или база података. Фајлови у ЦСВ формат може да се увезе и извезе из програма (Мицрософт Оффице и Екцел) који чувају податке у табелама. ЦСВ датотека је користила граничник за идентификацију и одвајање различитих токена података у датотеци. Формат ЦСВ датотеке се користи када премештамо табеларне податке између програма који изворно раде на некомпатибилним форматима. Постоје следећи начини за читање ЦСВ датотеке у Јави. Подразумевани сепаратор ЦСВ датотеке је а зарез (,) .

Постоје следећи начини за штампање низа у Јави:

  • Јава Сцаннер класа
  • Јава Стринг.сплит() методом
  • Користећи ОпенЦСВ АПИ

Како направити ЦСВ датотеку

Постоје два начина да направите ЦСВ датотеку:

  • Користећи Мицрософт Екцел
  • Користећи Нотепад

Користећи Мицрософт Екцел

Корак 1: Отворите Мицрософт Екцел.

Корак 2: Упишите следеће податке у датотеку:

Како читати ЦСВ датотеку у Јави

Корак 3: Сада, сачувајте датотеку. Наведите име датотеке ЦСВДемо и изаберите ЦСВ (раздвојено зарезима) из сачувати као тип мени. Сада кликните на дугме Сачувај.

Како читати ЦСВ датотеку у Јави

Коришћење Нотепад-а

Корак 1: Отвори нотепад .

јава форматирање стрингова

Корак 2: Упишите неке податке у датотеку раздвојени са зарез (,) . На пример:

Вивек, Сингх, 23, 9999999, Цхандигарх

Корак 3: Сачувајте датотеку са .цсв проширење.

Направили смо следећу датотеку.

Како читати ЦСВ датотеку у Јави

Јава Сцаннер класа

Јава Сцаннер класе пружају различите методе помоћу којих можемо читати ЦСВ датотеку. Класа Сцаннер обезбеђује конструктор који производи вредности скениране из наведене датотеке. Разбија податке у форму токена. Користи образац за раздвајање који подразумевано одговара белом простору. Добијени токени се затим конвертују у вредности различитих типова коришћењем метода нект().

Пример

 import java.io.*; import java.util.Scanner; public class ReadCSVExample1 { public static void main(String[] args) throws Exception { //parsing a CSV file into Scanner class constructor Scanner sc = new Scanner(new File('F:\CSVDemo.csv')); sc.useDelimiter(','); //sets the delimiter pattern while (sc.hasNext()) //returns a boolean value { System.out.print(sc.next()); //find and returns the next complete token from this scanner } sc.close(); //closes the scanner } } 

Излаз:

 Shashank, Mishra, Auditor, 909090090, 45000, Moti Vihar Naveen, Singh, Accountant, 213344455, 12000, Shastri Nagar Mahesh, Nigam, Sr. Manager, 787878878, 30000, Ashok Nagar Manish, Gupta, Manager, 999988765, 20000, Saket Nagar 

Јава Стринг.сплит() метода

Јава Стринг.сплит() идентификује граничник и подели редове на токене.

Синтакса

 public String[] split(String regex) 

Метода анализира регуларни израз за разграничење. Метод враћа низ стрингова израчунат дељењем овог стринга око подударања датог регуларног израза.

Размотрите низ:

најбољи осмех на свету

'ово је табела' Регек Резултат : {'ово је табела'}

Пример

У следећем примеру користимо класу БуффередРеадер која чита датотеку ред по ред све док се не достигне ЕОФ (крај датотеке).

 import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class ReadCSVExample2 { public static void main(String[] args) { String line = ''; String splitBy = ','; try { //parsing a CSV file into BufferedReader class constructor BufferedReader br = new BufferedReader(new FileReader('CSVDemo.csv')); while ((line = br.readLine()) != null) //returns a Boolean value { String[] employee = line.split(splitBy); // use comma as separator System.out.println('Employee [First Name=' + employee[0] + ', Last Name=' + employee[1] + ', Designation=' + employee[2] + ', Contact=' + employee[3] + ', Salary= ' + employee[4] + ', City= ' + employee[5] +']'); } } catch (IOException e) { e.printStackTrace(); } } } 

Излаз:

 Employee [First Name= Shashank, Last Name= Mishra, Designation= Auditor, Contact= 909090090, Salary= 45000, City= Moti Vihar] Employee [First Name= Naveen, Last Name=Singh, Designation= Accountant, Contact=213344455, Salary= 12000, City= Shastri Nagar] Employee [First Name= Mahesh, Last Name=Nigam, Designation= Sr. Manager, Contact=787878878, Salary= 30000, City= Ashok Nagar] Employee [First Name= Manish, Last Name=Gupta, Designation= Manager, Contact=999988765, Salary= 20000, City= Saket Nagar] 

Коришћење ОпенЦСВ АПИ-ја

ОпенЦСВ је АПИ треће стране који обезбеђује стандардне библиотеке за читање различитих верзија ЦСВ датотеке. Библиотека пружа бољу контролу за руковање ЦСВ датотеком. Библиотека такође може да чита ТДФ (Таб-Делимитед Филе) формат датотеке.

Карактеристике ОпенЦСВ-а

  • Било који број вредности по реду.
  • Игнорише зарезе у елементима под наводницима.
  • Рукује уносима који обухватају више редова.

Тхе ЦСВРеадер цласс се користи за читање ЦСВ датотеке. Класа обезбеђује конструктор класе ЦСВРеадер за рашчлањивање ЦСВ датотеке.

Синтакса

 public CSVReder(Reader reader, char separator) OR public CSVReder(Reader reader) 

Параметерс

читалац: Читач до ЦСВ извора.

сепаратор: То је граничник који се користи за раздвајање уноса.

Кораци за читање ЦСВ датотеке у ецлипсе-у:

Корак 1: Направите датотеку класе са именом РеадЦСВЕкампле3 и напишите следећи код.

Корак 2: Створити либ фолдер у пројекту.

Корак 3: Преузимање опецсв-3.8.јар из

примери дфа аутомата

хттпс://репо1.мавен.орг/мавен2/цом/опенцсв/опенцсв/3.8/опенцсв-3.8.јар

4. корак: Копирај опенцсв-3.8.јар и налепите у фасциклу либ.

5. корак: Сада покрените програм.

Пример

 import java.io.FileReader; import com.opencsv.CSVReader; public class ReadCSVExample3 { public static void main(String[] args) { CSVReader reader = null; try { //parsing a CSV file into CSVReader class constructor reader = new CSVReader(new FileReader('F:\CSVDemo.csv')); String [] nextLine; //reads one line at a time while ((nextLine = reader.readNext()) != null) { for(String token : nextLine) { System.out.print(token); } System.out.print('
'); } } catch (Exception e) { e.printStackTrace(); } } } 

Излаз:

 Shashank Mishra Auditor 909090090 45000 Moti Vihar Naveen Singh Accountant 213344455 12000 Shastri Nagar Mahesh NigamSr. Manager 787878878 30000 Ashok Nagar Manish Gupta Manager 999988765 20000 Saket Nagar 

Читање ЦСВ датотеке са другим сепаратором

У следећој ЦСВ датотеци користили смо тачку и зарез (;) да одвојимо токене.

Како читати ЦСВ датотеку у Јави

Пример

 import java.io.FileReader; import java.io.IOException; import com.opencsv.CSVReader; public class ReadCSVExample4 { public static void main(String[] args) { CSVReader reader = null; try { reader = new CSVReader(new FileReader('F:\CSVDemo.csv')); String [] nextLine; //read one line at a time while ((nextLine = reader.readNext()) != null) { for(String token : nextLine) { System.out.println(token); } System.out.print('
'); } } catch (Exception e) { e.printStackTrace(); } } } 

Излаз:

 Shashank; Mishra; Auditor; 909090090; 45000; Moti Vihar Naveen; Singh; Accountant; 213344455; 12000; Shastri Nagar Mahesh; Nigam; Sr. Manager; 787878878; 30000; Ashok Nagar Manish; Gupta; Manager; 999988765; 20000; Saket Nagar