QuotationAwareTokenizer

public class QuotationAwareTokenizer
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.QuotationAwareTokenizer


Tóm tắt

Hàm khởi tạo công khai

QuotationAwareTokenizer()

Phương thức công khai

static String combineTokens(String... tokens)

Thực hiện phép đảo ngược của tokenizeLine(String).

static String[] tokenizeLine(String line, String delim)
static String[] tokenizeLine(String line)

Mã hoá chuỗi, phân tách theo dấu cách.

static String[] tokenizeLine(String line, boolean logging)

Mã hoá chuỗi, phân tách theo dấu cách.

static String[] tokenizeLine(String line, String delim, boolean logging)

Mã hoá chuỗi, phân tách theo dấu phân cách đã chỉ định.

Hàm khởi tạo công khai

QuotationAwareTokenizer

public QuotationAwareTokenizer ()

Phương thức công khai

combineTokens

public static String combineTokens (String... tokens)

Thực hiện phép đảo ngược của tokenizeLine(String).
Cho mảng mã thông báo, hãy kết hợp các mã thông báo đó thành một dòng.

Giá trị trả về
String String được tạo từ tất cả mã thông báo.

tokenizeLine

public static String[] tokenizeLine (String line, 
                String delim)

Tham số
line String

delim String

Giá trị trả về
String[]

tokenizeLine

public static String[] tokenizeLine (String line)

Mã hoá chuỗi, phân tách theo dấu cách. Không phân tách giữa các dấu ngoặc kép liên tiếp, không được trích dẫn.

Xem thêm tokenizeLine(String, String)

Tham số
line String

Giá trị trả về
String[]

tokenizeLine

public static String[] tokenizeLine (String line, 
                boolean logging)

Mã hoá chuỗi, phân tách theo dấu cách. Không phân tách giữa các dấu ngoặc kép liên tiếp, không được trích dẫn.

Xem thêm tokenizeLine(String, String)

Tham số
line String

logging boolean

Giá trị trả về
String[]

tokenizeLine

public static String[] tokenizeLine (String line, 
                String delim, 
                boolean logging)

Mã hoá chuỗi, phân tách theo dấu phân cách đã chỉ định. Không phân tách giữa các dấu ngoặc kép đôi liên tiếp, không được trích dẫn.

Cách hoạt động của trình tạo mã:

  1. Phân tách chuỗi thành "ký tự", trong đó mỗi "ký tự" là một ký tự thoát như \" (tức là "\\\"") hoặc một ký tự thực duy nhất như f (chỉ "f").
  2. Đối với mỗi "nhân vật"
    1. Nếu đó là dấu cách, hãy hoàn tất một mã thông báo trừ phi chúng ta đang được trích dẫn
    2. Nếu đó là dấu ngoặc kép, hãy lật bit "we're being quoted" (chúng tôi đang được trích dẫn)
    3. Nếu không, hãy thêm mã này vào mã thông báo đang được tạo
  3. Tại EOL, chúng ta thường chưa thêm mã thông báo cuối cùng vào (mã thông báo) ERROR(/ArrayList)
    1. Nếu "ký tự" cuối cùng là ký tự thoát, hãy gửi một ngoại lệ; ký tự đó không hợp lệ
    2. Nếu chúng ta đang ở giữa một trích dẫn, hãy gửi một ngoại lệ; đó là không hợp lệ
    3. Nếu không, hãy thêm mã thông báo cuối cùng vào (mã thông báo)
  4. Trả về phiên bản String[] của (mã thông báo)

Tham số
line String: Một String cần được mã hoá

delim String: dấu phân tách để phân tách

logging boolean: có ghi lại hoạt động hay không

Giá trị trả về
String[] Phiên bản chuỗi được mã hoá

Gửi
IllegalArgumentException nếu không thể phân tích cú pháp dòng