JavaRush /Blog Java /Random-VI /Nghỉ giải lao #135. 5 cách để chuyển đổi tệp thành chuỗi ...

Nghỉ giải lao #135. 5 cách để chuyển đổi tệp thành chuỗi trong Java. Cách thay đổi đối số dòng lệnh trong Java

Xuất bản trong nhóm

5 cách để chuyển đổi tệp thành chuỗi trong Java

Nguồn: Medium Nghỉ giải lao #135.  5 cách để chuyển đổi tệp thành chuỗi trong Java.  Cách thay đổi đối số dòng lệnh trong Java - 1 Hôm nay chúng ta sẽ thảo luận về 5 cách đơn giản và đã được chứng minh để đọc hoặc chuyển đổi tệp thành chuỗi trong Java. Việc lựa chọn phương pháp phù hợp nhất cho bạn tùy thuộc vào cấu hình của một dự án cụ thể. Để bắt đầu, hãy giả sử rằng inputStream là một biến thuộc loại inputStream.
InputStream inputStream;
Bây giờ hãy kiểm tra các phương pháp chuyển đổi khác nhau.

1. Sử dụng gói tệp Java 1.11+ tích hợp sẵn:

import java.nio.file.Files;
import java.nio.file.Path;
String result = Files.readString(Path.of("filePath"));

//Bonus: To Write string to a file you can use
String content = "Demo Content";
Files.writeString(filePath, content);
Phương pháp này hoạt động với Java 1.11+.

2. Sử dụng gói Streams Java 1.8+ tích hợp sẵn:

String result =  new  String( Files.readAllBytes ( Paths.get ( filePath )),          StandardCharsets.UTF_8 ) ;
Phương pháp này hoạt động với Java 1.8+.

3. Máy quét Java riêng:

try (Scanner scanner = new Scanner(Paths.get(fileName), StandardCharsets.UTF_8.name())) {
    String result = scanner.useDelimiter("\\A").next();
}
Lưu ý rằng \A đại diện cho mẫu biểu thức chính quy cho phương thức useDelimiter của máy quét . \A có nghĩa là: :bắt đầu một chuỗi! (đầu dòng!). Vì vậy, khi áp dụng mẫu này, toàn bộ luồng đã sẵn sàng để sử dụng trong đối tượng máy quét.

4. Phương thức Apache commons-io IOUtils:

File file = new File("data.txt");
String result = FileUtils.readFileToString(file, StandardCharsets.UTF_8);
Phương pháp này yêu cầu cài đặt thư viện Apache commons-io trong dự án của bạn. Bạn có thể tìm thấy nó tại liên kết từ maven .

5. Sử dụng thư viện Google Guava:

String result = Files.toString(new File(path), Charsets.UTF_8);
Sử dụng phương pháp này giả định rằng dự án của bạn đã có thư viện Guava. Bạn có thể tìm thấy nó bằng liên kết từ maven . Nếu bạn muốn thử nghiệm với Luồng đầu vào thực mà không có bất kỳ phương pháp tiện ích nào thì hãy sử dụng phương pháp này.

Cách thay đổi đối số dòng lệnh trong Java

Nguồn: DZone Trong bài viết này, bạn sẽ tìm hiểu cách thay đổi các đối số dòng lệnh trong Java, cách chúng được truyền và cách chúng hoạt động. Làm cách nào để kiểm tra xem mã của bạn không có lỗi và xử lý tất cả các yêu cầu? Cách dễ nhất là kiểm tra nó trên tất cả các trường hợp kiểm thử có thể có. Tuy nhiên, việc thực hiện tất cả các bài kiểm tra này có thể khá lâu và tốn nhiều công sức. Chúng tôi cần một số cách khác có thể thực hiện việc này một cách dễ dàng, không gặp nhiều rắc rối và tốt nhất là tự động hóa. Đối số dòng lệnh Java là một giải pháp cho vấn đề của chúng tôi. Chúng đơn giản hóa đáng kể quá trình kiểm tra và gỡ lỗi.
// here args will hold the command line arguments
    public static void main(String[] args) {
        System.out.println("Hello World!");
        // remaining code will go here
    }

Đối số dòng lệnh là gì?

Đối số dòng lệnh Java là một cách nhập dữ liệu vào chương trình thông qua dòng lệnh. Các lập trình viên có thể truyền các đối số này trực tiếp từ bảng điều khiển, bảng điều khiển này sẽ được truy cập bằng phương thức main() . Nếu cần, có thể bỏ qua các đối số dòng lệnh bằng cách chuyển trực tiếp các giá trị đến phương thức main() .

Đối số dòng lệnh hoạt động như thế nào?

Đối số dòng lệnh được gói và chuyển vào args[] . Đây là một mảng các chuỗi chứa tất cả các đối số dòng lệnh được truyền cho nó. Mỗi đối số sẽ được lưu trữ theo chỉ mục, bắt đầu từ args[0] đến args[n] .

Đối số dòng lệnh được truyền như thế nào?

Đối số dòng lệnh được truyền qua dòng lệnh hoặc thiết bị đầu cuối. Tất cả các đối số được truyền qua chúng sẽ được chuyển đổi và đặt trong mảng args[] bên trong JVM. Bây giờ hãy xem cách truyền đối số dòng lệnh bằng một ví dụ. Giả sử chúng ta có một tệp có một số mã Java. Các bước sau đây sẽ trình bày cách truyền đối số dòng lệnh trong Java:
  1. Lưu chương trình Java có phần mở rộng .java (ví dụ: Arguments.java ).

  2. Mở dấu nhắc lệnh/thiết bị đầu cuối trong thư mục nơi chương trình được lưu trữ cục bộ.

  3. Biên dịch chương trình Java để chuyển đổi tệp .java thành tệp .class .

    • Lệnh: javac filename.java (Trong ví dụ của chúng tôi: javac Arguments.java )
  4. Chạy chương trình và truyền các đối số sau khi tên tệp được phân tách bằng dấu cách.

    • Lệnh: tên tệp java đối số1 đối số2 .... đối sốN (Trong ví dụ của chúng tôi, đối số Java: Chào mừng bạn đến với blog này và Học tập vui vẻ )

Làm thế nào để truy cập các đối số dòng lệnh?

Bây giờ hãy thử truy cập tất cả các đối số dòng lệnh được truyền trong Java. Làm thế nào để làm nó? Vì các đối số được lưu trữ trong mảng args[] , điều này có nghĩa là chúng ta có thể dễ dàng truy cập chúng bằng cách sử dụng args[i] , chỉ định một chỉ mục có thể nằm trong khoảng từ 0 đến n (tổng số đối số được truyền).
class Arguments {
    public static void main( String[] args ) {
        System.out.println(" Hello World! ");
        // args.length is used to get length of args array

        System.out.println(" Total number of args: " + args.length);
        // iterating over the args array to print the args if available

        for (int i = 0; i < args.length; i++) {
            System.out.println(" Arg " + i + ": " + args[i]);
        }
    }
}
Phần kết luận:
Chào thế giới! Tổng số đối số: 7 Arg 0: Chào mừng Arg 1: đến Arg 2: Arg này 3: blog Arg 4: và Arg 5: Happy Arg 6: Học tập

Làm cách nào để thay đổi đối số dòng lệnh?

Ở đây chúng ta có thể sử dụng args[i] để lấy giá trị ở chỉ mục thứ i và sau đó sử dụng toán tử gán (=). Vì vậy, chúng ta có thể thay đổi đối số dòng lệnh ở chỉ mục thứ i. Đoạn mã bên dưới sẽ thay đổi một số đối số được truyền qua dòng lệnh trong Java.
args[1] = " Modified Command Line Argument 1 ";
args[3] = " Modified Command Line Argument 2 ";
args[5] = " Modified Command Line Argument 3 ";
Đầu ra sau khi thay đổi:
Chào thế giới! Tổng số đối số: 7 Arg 0: Chào mừng Arg 1: Đối số dòng lệnh được sửa đổi 1 Arg 2: Arg này 3: Đối số dòng lệnh được sửa đổi 2 Arg 4: và Arg 5: Đối số dòng lệnh được sửa đổi 3 Arg 6: Đang học

Phần kết luận

  • Đối số dòng lệnh Java là một cách nhập dữ liệu vào chương trình thông qua dòng lệnh.

  • Các đối số dòng lệnh được truyền khi thực thi lệnh chạy, các đối số được truyền ngay sau tên file, cách nhau bằng dấu cách.

  • Đối số dòng lệnh được ghi vào mảng chuỗi args[] .

  • Chúng ta có thể truy cập hoặc thay đổi các đối số dòng lệnh bằng cách sử dụng toán tử args[i] và toán tử gán.

Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION