StreamTokenizer类quoteChar()方法 (StreamTokenizer Class quoteChar() method)
quoteChar() method is available in java.io package.
quoteChar()方法在java.io包中可用。
quoteChar() method denotes that matching pairs of this character delimiter, string constants in this StreamTokenizer. When nextToken() method encounters a string constant, ttype field value is set to the string delimiter and the sval field is set to the content of this string.
quoteChar()方法表示与此字符定界符(此StreamTokenizer中的字符串常量)的匹配对。 当nextToken()方法遇到字符串常量时,会将ttype字段值设置为字符串定界符,并将sval字段设置为该字符串的内容。
When a string quote character is encountered then a string is recognized, made of all characters after, the string quote character up to the next occurrence of that similar string quote char or line exit, EOF. Escape sequences "\n", "\t" is recognized and changed to single characters as the string is parsed.
当遇到字符串引号字符时,将识别由字符串引号字符组成的字符串,该字符串由其后的所有字符组成,直到下一次出现该相似的字符串引号char或行出口EOF。 解析字符串时,转义序列“ \ n”,“ \ t”被识别并更改为单个字符。
quoteChar() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
quoteChar()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名访问该方法,则会收到错误消息。
quoteChar() method does not throw an exception at the time of quote character.
quoteChar()方法在引号字符时不会引发异常。
Syntax:
句法:
public void quoteChar(int character);
Parameter(s):
参数:
int character – represents the character.
int字符 –表示字符。
Return value:
返回值:
The return type of the method is void, it returns nothing.
该方法的返回类型为void ,不返回任何内容。
Example:
例:
// Java program to demonstrate the example
// of void quoteChar(int character) method of StreamTokenizer
import java.io.*;
public class QuoteChar {
public static void main(String[] args) {
String str = "Hi, This is \n a mathematical expression :\n " +
" 2 * 4 = 8 " + "8 + 5 = 13";
try {
// Instantiates FileOutputStream and ObjectOutputStream
FileOutputStream fos_stm = new FileOutputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt");
ObjectOutputStream obj_out_stm = new ObjectOutputStream(fos_stm);
// By using writeUTF() method is to
// write the given string in the file
obj_out_stm.writeUTF(str);
obj_out_stm.flush();
// Instantiates FileOutputStream and ObjectOutputStream
ObjectInputStream obj_in_stm = new ObjectInputStream(new FileInputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt"));
// Instantiates StreamTokenizer and Reader
Reader reader = new BufferedReader(new InputStreamReader(obj_in_stm));
StreamTokenizer st = new StreamTokenizer(reader);
// By using quoteChar() method is to
// represent the given char '8' as
// quote char
st.quoteChar('8');
// Here, we are considering initially
// file is not empty
boolean end_of_file = false;
while (!end_of_file) {
// By using nextToken() method is to
// parse the next token from the stream
int token = st.nextToken();
switch (token) {
case StreamTokenizer.TT_EOF:
System.out.println("End of File Found");
end_of_file = true;
break;
case StreamTokenizer.TT_EOL:
System.out.println("End of Line Found");
break;
case StreamTokenizer.TT_WORD:
System.out.println("word: " + st.sval);
break;
case StreamTokenizer.TT_NUMBER:
System.out.println("number: " + st.nval);
break;
default:
System.out.println((char) token + " Found.");
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Output
输出量
@ Found.
word: Hi
, Found.
word: This
word: is
word: a
word: mathematical
word: expression
: Found.
number: 2.0
* Found.
number: 4.0
= Found.
8 Found.
+ Found.
number: 5.0
= Found.
number: 13.0
End of File Found
翻译自: https://www.includehelp.com/java/streamtokenizer-quotechar-method-with-example.aspx