The CSV oznacza Wartości oddzielone przecinkami . Jest to prosty format pliku używany do przechowywania danych tabelarycznych w prostej formie tekstowej, takiej jak arkusz kalkulacyjny lub baza danych. Pliki w CSV formacie można importować i eksportować z programów (Microsoft Office i Excel), które przechowują dane w tabelach. W pliku CSV zastosowano ogranicznik do identyfikowania i oddzielania różnych tokenów danych w pliku. Format pliku CSV wykorzystujemy, gdy przenosimy dane tabelaryczne pomiędzy programami, które natywnie działają na niekompatybilnych formatach. Istnieją następujące sposoby odczytu pliku CSV w Javie. Domyślnym separatorem pliku CSV jest a przecinek (,) .
Istnieją następujące sposoby drukowania tablicy w Javie:
- Jawa Skaner klasa
- Jawa String.split() metoda
- Za pomocą Otwórz CSV API
Jak utworzyć plik CSV
Istnieją dwa sposoby utworzenia pliku CSV:
- Za pomocą Microsoft Excel
- Za pomocą Notatnik
Korzystanie z Microsoft Excel
Krok 1: Otwórz Microsoft Excel.
Krok 2: Wpisz do pliku następujące dane:
Krok 3: Teraz zapisz plik. Podaj nazwę pliku CSVDemo i wybierz CSV (rozdzielany przecinkami) z pliku Zapisz jako typ menu. Teraz kliknij przycisk Zapisz.
Korzystanie z Notatnika
Krok 1: otwarty notatnik .
Krok 2: Zapisz dane do pliku oddzielonego znakami przecinek (,) . Na przykład:
Vivek, Singh, 23, 9999999, Chandigarh
co to jest system plików Linuksa
Krok 3: Zapisz plik za pomocą .csv rozszerzenie.
Stworzyliśmy następujący plik.
Klasa skanera Java
Jawa Skaner class udostępniają różne metody, dzięki którym możemy odczytać plik CSV. Klasa Scanner udostępnia konstruktor generujący wartości zeskanowane z określonego pliku. Dzieli dane na formę tokenu. Używa wzorca ograniczników, który domyślnie dopasowuje białe znaki. Powstałe tokeny są następnie konwertowane na wartości różnych typów przy użyciu metod next().
Przykład
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 } }
Wyjście:
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
Metoda Java String.split().
Jawa String.split() identyfikuje ogranicznik i dzieli wiersze na tokeny.
Składnia
public String[] split(String regex)
Metoda analizuje ograniczające wyrażenie regularne. Metoda zwraca tablicę ciągów obliczoną poprzez podzielenie tego ciągu wokół dopasowań danego wyrażenia regularnego.
Rozważ ciąg:
'to jest stół' Wyrażenie regularne Wynik : {'to jest stół'}
q2 miesiące
Przykład
W poniższym przykładzie używamy klasy BufferedReader, która czyta plik linia po linii, aż do osiągnięcia znaku EOF (końca pliku).
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(); } } }
Wyjście:
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]
Korzystanie z API OpenCSV
OpenCSV to interfejs API strony trzeciej, który udostępnia standardowe biblioteki do odczytu różnych wersji pliku CSV. Biblioteka zapewnia lepszą kontrolę nad obsługą pliku CSV. Biblioteka może także czytać pliki w formacie TDF (plik rozdzielany tabulatorami).
Funkcje OpenCSV
- Dowolna liczba wartości w linii.
- Ignoruje przecinki w cytowanych elementach.
- Obsługuje wpisy obejmujące wiele linii.
The CSVReader klasa służy do odczytu pliku CSV. Klasa udostępnia konstruktora klasy CSVReader do analizowania pliku CSV.
Składnia
public CSVReder(Reader reader, char separator) OR public CSVReder(Reader reader)
Parametry
Algorytm sortowania sterty
czytelnik: Czytnik do źródła CSV.
separator: Jest to separator używany do oddzielania wpisów.
Kroki, aby odczytać plik CSV w Eclipse:
Krok 1: Utwórz plik klasy o nazwie PrzeczytajCSVPrzykład3 i napisz następujący kod.
Krok 2: Stwórz biblioteka folderze w projekcie.
Krok 3: Pobierać opecsv-3.8.jar z
https://repo1.maven.org/maven2/com/opencsv/opencsv/3.8/opencsv-3.8.jar
Krok 4: Skopiuj opencsv-3.8.jar i wklej do folderu lib.
Krok 5: Teraz uruchom program.
Przykład
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(); } } }
Wyjście:
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
Odczyt pliku CSV z innym separatorem
W poniższym pliku CSV użyliśmy średnika (;) do oddzielenia tokenów.
Przykład
przycinanie a-b
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(); } } }
Wyjście:
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