当把数据输入到文件的时候,程序员通常会发觉数据(特别是字符串)并不是按自己所想象的那么容易操作。这是因为字符串能够多行跨越,能够包含引号等等,这些特性会导致很多问题。
现在让我们看一看StringEscaper类,这一个类允许你在一个字符串中忽略地操作指定的字符(正如在你的代码中忽略字符串,例如,” ”代表新的一行)。下一节我们将讲解如何把任一字符串输入到任一文件流。
StringEscaper类允许你在字符串操作时忽略指定的字符,而之后可以完整地恢复这些字符。为了构建一个StringEscaper类,你必须生成一个EscapeStringInfo 函数,这一函数由以下几个部分组成:
数组中的每一个元素都含有可以忽略的字符(这一字符可以被忽略)以及可以替代的字符(这一字符可以被其它字符替代)。
例如,如果你想从一行写入或输出一个字符串,EscapeStringInfo要包括''(要忽略的指定字符),以及{ ' ', 'n' } 和{ ' ', 'r' } 数组。
用' '代表Feed键,' '代表Tab键,''代表Backspace键。这些操作非常有用,特别是把一些记录写到文件的时候。每一个记录只能在一行上写入,而每一行都以Tab来分界。在这种情况下,你的操作会忽略写入的每一字符串,而当读出时这些字符串会自动恢复。