Java 使用url发送阿拉伯语消息
我想发一条带阿拉伯语的短信 我使用以下代码: sendSMS.jsp:Java 使用url发送阿拉伯语消息,java,jsp,Java,Jsp,我想发一条带阿拉伯语的短信 我使用以下代码: sendSMS.jsp: <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ page import="mobily.sms.java.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ page import="mobily.sms.java.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<%
String balance="";
Mobily m=new Mobily();
if(request.getParameter("mode")!= null && request.getParameter("mode").equals("send")){
String senderName=request.getParameter("txtSender");
String message=request.getParameter("txtMessage");
String numbers=request.getParameter("txtNumbers");
m.sendMessage("","",senderName,message,numbers);
balance=m.checkBalance("","");
String output=m.getMessage();
out.println(output);
}else{
balance=m.checkBalance("","");
}
%>
<body>
<form action="sendSMS.jsp">
<table border="1">
<tr>
<td colspan="2" align="center" >Mobily Send SMS Form</td>
</tr>
<tr>
<td>Balance:</td>
<td><%= balance %></td>
</tr>
<tr>
<td>Sender Name:</td>
<td><input type="Text" name="txtSender"/></td>
</tr>
<tr>
<td>Message :</td>
<td><textarea id="txtMessage" cols="20" name="txtMessage" rows="5"></textarea></td>
</tr>
<tr>
<td>Number(s):</td>
<td><input type="Text" name="txtNumbers"/></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Send"/></td>
</tr>
</table>
<input type="hidden" name="mode" value ="send"/>
</form>
</body>
</html>
我尝试修改编码,但未成功:
我更改发送消息的方法:
public void sendMessage(String userName,String password,String sender,String message,String numbers) throws UnsupportedEncodingException{
String message1 = new String(message.getBytes("cp1256"), "cp1256");
System.out.println(message1);
String para ="mobile=" + userName + "&password=" + password + "&numbers=" + numbers+ "&sender=" + sender + "&msg=" + convertUnicode(message1) + "&applicationType=24";
sendURL("http://www.mobily.ws/api/msgSend.php",para,1);
System.out.println(getMessage());
}
urlConnection.setRequestProperty("Accept-Charset", "UTF-8");
urlConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
urlConnection.setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.155 Safari/537.36");
我还尝试修改sendURL方法:
public void sendMessage(String userName,String password,String sender,String message,String numbers) throws UnsupportedEncodingException{
String message1 = new String(message.getBytes("cp1256"), "cp1256");
System.out.println(message1);
String para ="mobile=" + userName + "&password=" + password + "&numbers=" + numbers+ "&sender=" + sender + "&msg=" + convertUnicode(message1) + "&applicationType=24";
sendURL("http://www.mobily.ws/api/msgSend.php",para,1);
System.out.println(getMessage());
}
urlConnection.setRequestProperty("Accept-Charset", "UTF-8");
urlConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
urlConnection.setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.155 Safari/537.36");
我在jsp页面中更改:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="mobily.sms.java.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
您需要发送阿拉伯文邮件的Unicode版本。例如:u062a\u0645\u062a\u0627\u0644\u0645\u0648\u0627\u0641\u0642\u0629\u0639\u0644\u0644\u0643。您的输出正在转换为十进制输出。谢谢,您的回答解决了我的问题。您需要发送阿拉伯文邮件的Unicode版本。例如:u062a\u0645\u062a\u0627\u0644\u0645\u0648\u0627\u0641\u0642\u0629\u0639\u0644\u0644\u0643。您的输出正在转换为十进制输出。谢谢,您的回答解决了我的问题