如何从java中的txt文件中提取以下信息
例如,为了好玩,我正在编写一个基于电子邮件(控制台)的应用程序。我试图将文件合并到其中以读取其中的信息。例如,如果我的txt格式如下,如何读取每个变量如何从java中的txt文件中提取以下信息,java,file,jakarta-mail,Java,File,Jakarta Mail,例如,为了好玩,我正在编写一个基于电子邮件(控制台)的应用程序。我试图将文件合并到其中以读取其中的信息。例如,如果我的txt格式如下,如何读取每个变量 Server: gmail User: test@mail.com Password: pass123 To: to@mail.com CC: to@mail.com, to@mail.com, to@mail.com BCC: to@mail.com, to@mail.com Subject: subject Body: 123 454 646
Server: gmail
User: test@mail.com
Password: pass123
To: to@mail.com
CC: to@mail.com, to@mail.com, to@mail.com
BCC: to@mail.com, to@mail.com
Subject: subject
Body: 123
454
6464
This is still part of the body
File: filename.zip
但是,我相信CC和BCC应该是字符串数组,对吗?您试过了吗?你包括了那个标签,所以我想你知道它是什么
使用。请注意,文件实际上必须是MIME格式,您上面的示例并不完全如此。正如Bill Shannon在上面所说的,您的问题有点模糊,但我想您正在试图找到一种从文本文件中读取键/值对的方法,以便您可以使用它们以编程方式编写电子邮件。如果是这样的话,我相信你会想继续做如下的事情 首先,上面列出的数据基本上是名称/值对,分隔为:
name1: value1
name2: value2
...
nameN: valueN
如果是这样,正确的惯例是使用.properties文件。为此,您希望将键/值对分隔为:
name1=value1
name2=value2
...
nameN=valueN
因此,您上面的数据类似于:
server=gmail
user=test@mail.com
password=pass123
to=to@mail.com
cc=cc1@mail.com,cc2@mail.com,cc3@mail.com
bcc=to@mail.com,to@mail.com
subject=This is my Subject
body=123 \
454 \
6464 \
This is still part of the body
file.name=filename.zip
请注意“body”属性每行末尾的反斜杠。这些逃逸线中断,使你结束了只有一行
如果将上述内容保存到名为email.properties的文件中,则可以在Java程序中访问这些内容,如下所示:
import java.io.FileReader;
import java.io.IOException;
import java.util.Map;
import java.util.Properties;
public class EmailComposer {
public static void main(String[] args) throws IOException {
Properties properties = new Properties();
properties.load(new FileReader("email.properties"));
for (Map.Entry<Object, Object> property : properties.entrySet()) {
String key = property.getKey().toString();
String value = property.getValue().toString();
System.out.printf("%s --> [%s]\n", key, value);
}
}
}
你在找一封邮件的答复吗?你的问题不清楚。。。
cc --> [cc1@mail.com,cc2@mail.com,cc3@mail.com]
server --> [gmail]
user --> [test@mail.com]
body --> [123 454 6464 This is still part of the body]
bcc --> [to@mail.com,to@mail.com]
subject --> [This is my Subject]
to --> [to@mail.com]
password --> [pass123]
file.name --> [filename.zip]