⑴ 编写程序,将一个java文件转换为HTML一个文件.
importjava.io.BufferedReader;
importjava.io.BufferedWriter;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileWriter;
importjava.io.IOException;
importjava.io.InputStreamReader;
publicclassChange{
StringtextHtml="";
Stringcolor="#00688B";
//读取文件
publicvoidReadFile(StringfilePath){
BufferedReaderbu=null;
InputStreamReaderin=null;
try{
Filefile=newFile(filePath);
if(file.isFile()&&file.exists()){
in=newInputStreamReader(newFileInputStream(file));
bu=newBufferedReader(in);
StringlineText=null;
textHtml="<html><body>";
while((lineText=bu.readLine())!=null){
lineText=changeToHtml(lineText);
lineText+="</br>";
textHtml+=lineText;
}
textHtml+="</html></body>";
}else{
System.out.println("文件不存在");
}
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
bu.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}
//输出文件
publicvoidwriterFile(Stringwritepath){
Filefile=newFile(writepath);
BufferedWriteroutput=null;
try{
output=newBufferedWriter(newFileWriter(file));
System.out.println(textHtml);
output.write(textHtml);
}catch(IOExceptione){
e.printStackTrace();
}finally{
try{
output.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}
//文件转换
publicStringchangeToHtml(Stringtext){
text=text.replace("&","&");
text=text.replace(""," ");
text=text.replace("<","<");
text=text.replace(">",">");
text=text.replace(""",""");
text=text.replace(""," ");
text=text.replace("public","<b><fontcolor='"+color+"'>public</font></b>");
text=text.replace("class","<b><fontcolor='"+color+"'>class</font></b>");
text=text.replace("static","<b><fontcolor='"+color+"'>static</font></b>");
text=text.replace("void","<b><fontcolor='"+color+"'>void</font></b>");
Stringt=text.replace("//","<fontcolor=green>//");
if(!text.equals(t)){
System.out.println("t:"+t);
text=t+"</font>";
}
returntext;
}
publicstaticvoidmain(String[]args){
System.out.println("第一个参数为读取文件路径,第二个参数为生成文件路径");
if(args.length<1){
System.out.println("请输入文件路径");
return;
}elseif(args.length<2){
System.out.println("请输入生成文件");
return;
}
Changec=newChange();
c.ReadFile(args[0]);
c.writerFile(args[1]);
}
}
传参调用:
楼主,根据自己的实际需要,再调整下吧
⑵ 如何用java实现发送html格式的邮件
首先Java发送邮件需要用到JavaMail,先到Oracle官网上下载好最新版本的JavaMail(刚才看了一下,最新是1.5.3),把下载的这个jar文件放到classpath里(如果是Web项目,就放到WEB-INF/lib目录下。
JavaMail主要支持发送纯文本的和html格式的邮件。
发送html格式的邮件的一个例程如下:
importjavax.mail.internet.InternetAddress;
importjavax.mail.internet.MimeMessage;
importjavax.mail.internet.MimeUtility;
importjavax.mail.Session;
importjavax.mail.MessagingException;
importjavax.mail.Transport;
publicclassSendHtmlMail{
publicstaticvoidsendMessage(StringsmtpHost,
Stringfrom,Stringto,
Stringsubject,StringmessageText)
throwsMessagingException,java.io.UnsupportedEncodingException{
//Step1:Configurethemailsession
System.out.println("Configuringmailsessionfor:"+smtpHost);
java.util.Propertiesprops=newjava.util.Properties();
props.setProperty("mail.smtp.auth","true");//指定是否需要SMTP验证
props.setProperty("mail.smtp.host",smtpHost);//指定SMTP服务器
props.put("mail.transport.protocol","smtp");
SessionmailSession=Session.getDefaultInstance(props);
mailSession.setDebug(true);//是否在控制台显示debug信息
//Step2:Constructthemessage
System.out.println("Constructingmessage-from="+from+"to="+to);
InternetAddressfromAddress=newInternetAddress(from);
InternetAddresstoAddress=newInternetAddress(to);
MimeMessagetestMessage=newMimeMessage(mailSession);
testMessage.setFrom(fromAddress);
testMessage.addRecipient(javax.mail.Message.RecipientType.TO,toAddress);
testMessage.setSentDate(newjava.util.Date());
testMessage.setSubject(MimeUtility.encodeText(subject,"gb2312","B"));
testMessage.setContent(messageText,"text/html;charset=gb2312");
System.out.println("Messageconstructed");
//Step3:Nowsendthemessage
Transporttransport=mailSession.getTransport("smtp");
transport.connect(smtpHost,"webmaster","password");
transport.sendMessage(testMessage,testMessage.getAllRecipients());
transport.close();
System.out.println("Messagesent!");
}
publicstaticvoidmain(String[]args){
StringsmtpHost="localhost";
Stringfrom="[email protected]";
Stringto="[email protected]";
Stringsubject="html邮件测试";//subjectjavamail自动转码
StringBuffertheMessage=newStringBuffer();
theMessage.append("<h2><fontcolor=red>这倒霉孩子</font></h2>");
theMessage.append("<hr>");
theMessage.append("<i>年年失望年年望</i>");
try{
SendHtmlMail.sendMessage(smtpHost,from,to,subject,theMessage.toString());
}
catch(javax.mail.MessagingExceptionexc){
exc.printStackTrace();
}
catch(java.io.){
exc.printStackTrace();
}
}
}
JavaMail是封装了很多邮件操作的,所以使用起来不很困难,建议你到JavaMail官网看一下API或下载Java Doc API文档。
⑶ java web应用中,怎样压缩响应的html文件&n
Java Web总结(一)
一、Servlet在应用中的作用
①Servlet是Java Web中MVC模式中的C部分,即控制部分,下面展示一下其所处的位置和整个客户端(浏览器)和服务器端的交互过程。(如图1)
Web总结(一)" TITLE="Java Web总结(一)" />
图1
②由图1可以看到浏览器通过请求将其数据提交到Servlet中,然后Servlet进行控制,即Servlet充当调度员的角色,其作用主要集中在三个方面:接收数据、调用业务逻辑、对客户端做出简单的响应。
③然后Servlet将要继续处理的数据提交给JavaBean,然后JavaBean进行验证,然后如果涉及到数据库的操作,就会继续用到DAO(数据访问模型),然后调用数据库中间件JDBC进行数据库的相关操作,然后到数据库中访问数据。
二、实现整个过程
①为了实现整个过程,首先编写一个html(JSP)前台页面,如图2:
Web总结(一)" TITLE="Java Web总结(一)" />
图2
代码如下:
<html>
<head>
<title>系统登陆</title>
</head>
<body>
<p> </p>
<p> </p>
<p> </p>
<div align="center">
<br>
<br>
<div style="margin:0 auto; width:230px;margin-top:70px;">
<form id="login" action="/JavaWeb/loginServlet" method="post">
<fieldset>
<legend>用户登陆</legend><br/>
<div>用户:
<input name="username" id="username"/>
</div>
<br/>
<div>密码:
<input name="password" id="pwd"/>
</div>
<br/>
</fieldset>
<div style="text-align: center;margin: 20px;">
<input type="submit" value="提交"/>
<input type="reset" value="重置"/>
</div>
</form>
</div>
</div>
</body>
</html>
②由上面的代码可以看到将<form>中的内容提交到/JavaWeb/loginServlet这个Servlet,这里涉及到了配置web.xml配置文件,只需要在配置文件中加入如下的部分:
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>cn.e.nwsuaf.cie.group4.servlet.LoginServlet</servlet-class>
<load-on-startup>0</load-on-startup>//在开启服务时,就调用init方法
</servlet>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/loginServlet</url-pattern>
</servlet-mapping>
③Servlet中的代码如下所示
package cn.e.nwsuaf.cie.group4.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.e.nwsuaf.cie.group4.service.LoginService;
public class LoginServlet extends HttpServlet{
private String userName;
private String password;
@Override
public void init() throws ServletException {
// TODO Auto-generated method stub
System.out.println("init....");
}
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
userName = req.getParameter("username");
password = req.getParameter("password");
LoginService loginService = new LoginService();
boolean flag = loginService.validate(userName,password);
if (flag){
req.getRequestDispatcher("index.jsp").forward(req, resp);
}else{
req.getRequestDispatcher("login.jsp").forward(req, resp);
}
}
@Override
public void destroy() {
// TODO Auto-generated method stub
System.out.println("destroy...");
}
}
然后对上面的代码中的一部分进行解释。这个类继承了HttpServlet,然后并对其中的init()、destroy()、service()方法进行重写,其中Servlet是单例的(设计模式中的singleton model),因为所有的客户端自服务器开启并对servlet进行初始化以后,所有的客户端都是调用这里边的同一个对象,直到调用destroy方法销毁之。
⑷ 求教:在JAVA语句中插入一个HTML语句该怎么格式呢
直接输出,对应好。
out.println("增加成功");
out.println("<核亩HTML>");
out.println(" <HEAD><TITLE>成功</TITLE></HEAD>");
out.println(" <BODY>");
out.print(" <a href='../冲旁login.jsp'>返回 ");
out.println("</a>改判森");
out.println(" </BODY>");
out.println("</HTML>");
⑸ java怎么把HTML界面做成pdf格式打印
public boolean convertHtmlToPdf(String inputFile, String outputFile)
throws Exception {
OutputStream os = new FileOutputStream(outputFile);
ITextRenderer renderer = new ITextRenderer();
String url = new File(inputFile).toURI().toURL().toString();
renderer.setDocument(url);
// 解决中文支持问题
ITextFontResolver fontResolver = renderer.getFontResolver();
fontResolver.addFont("C:/Windows/Fonts/SIMSUN.TTC", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
//解决图片的相对路径问题
renderer.getSharedContext().setBaseURL("file:/D:/");
renderer.layout();
renderer.createPDF(os);
os.flush();
os.close();
return true;
}
上面这段代码是这样的,输入一个HTML地址URL = inputFile,输入一个要输出的地址,就可以在输出的PDF地址中生成这个PDF。