最近我和我的小伙伴yaoyali结成对子,共同写网页版的四则运算。虽然现在还没弄好,但是比起上次用纯java写的四则运算有了很大改进。

一.存放四则运算题目和答案的类

package com.jaovo.msg.model;

public class DoubleOperation {
private static int operationNumber;
private static double[] result;
private static String[] question; public static String[] getQuestion() {
return question;
}
public static void setQuestion(String[] question) {
DoubleOperation.question = question;
}
public int getOperationNumber() {
return operationNumber;
}
public void setOperationNumber(int operationNumber) {
this.operationNumber = operationNumber;
}
public double[] getResult() {
return result;
}
public void setResult(double[] result) {
this.result = result;
} }

二.Welcom页面

@charset "UTF-8";
/****四则运算题目表格(<table>)****/
.box{
margin-top: 50px;
}
/****结果输入框(<input>)****/
.result{
width: 60px;
padding: 5px;
border:none;
font-size:20px;
border-bottom: solid yellowgreen 5px;
text-align:center;
}
/****题目(<td>)****/
.expr{
font-size: x-large;
} /****非分数/运算符(<div>)*****/
.nomal{
text-align:center;
 
    float:left;
position: relative;
top: 16px;
margin-left: 3px;
margin-right: 3px;
width="20px"
} /****分数(<div>)****/
.fraction{
text-align:center;
float: left;
margin-left:3px;
margin-right: 3px;
width="20px"
}
/****题目选择*****/
.option{
text-align: center;
}
/******你准备好了吗?按钮******/
.submit1{
padding-top: 10px;
padding-bottom: 10px;
padding-left: 20px;
padding-right: 20px;
background: #C90;
font-family: "微软雅黑";
font-weight: bold;
font-size: 20px;
}
/*****提交按钮*****/
.submit{
padding-top: 10px;
padding-bottom: 10px;
padding-left: 20px;
padding-right: 20px;
border-radius: 5px;
background: cornflowerblue;
border: none;
cursor: pointer;
color:lightyellow;
font-family: "微软雅黑";
font-weight: bold;
font-size: 20px;
}
/******计时器*******/
.timer{
position:fixed;
top: 10px;
right: 10px;
border: none;
width:50px;
text-align: right;
background: none;
}
.pause{
position:fixed;
top: 30px;
right: 10px;
}
/****题目选项****/
.option{
margin-left:auto;
margin-right:auto;
width:600px;
margin-top: 130px;
border:dashed #9ACD32 2px;
padding-top: 100px;
padding-bottom: 100px;
}
/****答题按钮*****/
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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">
<link rel="stylesheet" href="css/style.css"/>
<title>小学生四则运算</title>
<style type="text/css">
body
{
background-image:url(image/2.jpg);
}
#p1{text - indent:2em;text - align:center;font:italic 35px/40px 幼圆}
</style>
</head>
<body>
<p id="p1">欢迎小朋友来到小猪佩奇的数学乐园,快跟小猪佩奇一起去冒险吧!</p>
<form action="choose.jsp" class="option">
<button class="submit1" style="margin-top:60px">你准备好了吗?</button>
</form>
</body>
</html>

结果截图

三.选择出题数量及题目种类

choose.jsp和Connect.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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">
<link rel="stylesheet" href="css/style.css"/>
<title>小学生四则运算</title>
<style type="text/css">
body{
background-image:url(image/4.jpg);
}
</style>
</head>
<body>
<div style="text-align:right;">
<a href="Welcome.jsp">退出</a><br><br>
</div>
<form action="Connect.jsp" class="option">
<center><h2>题目定制</h2></center>
<p>选择题目类型:
<select name="elementNum">
<option>2</option>
<option>3</option>
</select>元运算<br /></p>
选择题目数量:
<input name="count" value="10" type="radio" />10
<input name="count" value="20" type="radio" />20
<input name="count" value="30" type="radio" />30
<input name="count" value="40" type="radio" />40
<input name="count" value="50" type="radio" />50
<input name="count" value="5000" type="radio" />5000<br/>
<input name="count" value="1000000" type="radio" />10000000(极限测试,慎选!!)
<br /><br />
<button class="submit" style="margin-top:50px">开始答题!</button>
</form>
</body>
</html>

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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">
<title>连接</title>
</head>
<body>
<%
String type=request.getParameter("elementNum");
String OperationNumber=request.getParameter("count");
if(OperationNumber==null||"".equals(OperationNumber))
{
OperationNumber="10";
}
if(type.equals("2"))
{
response.sendRedirect("DoubleOperation.jsp?OperationNumber="+OperationNumber);
}
else
{
response.sendRedirect("ThreeOperation.jsp?OperationNumber="+OperationNumber);
} %> </body>
</html>


四.二元四则运算

DoubleOperation.jsp

<%@ page import="java.util.Random" %>
<%@ page import="java.lang.Math" %>
<%@ page import="com.jaovo.msg.model.DoubleOperation" %>
<%@ page import="java.math.BigInteger" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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">
<title>二元运算</title> </head>
<body>
<form action="doDoubleOperation.jsp" method="post">
<div style="text-align:right;">
<a href="choose.jsp">题目定制</a>&nbsp;&nbsp;
<a href="Welcome.jsp">退出</a><br><br>
</div>
<%
int character=0;//运算符+,-,*,/
int num1=0;//运算式中第一个数
int num2=0;//运算式中第二个数
int correct=0;//计算正确的数目
int error=0;//计算错误的数目
String operat=null;//计算式
Random random = new Random();
int Endtime=1; //跳转时间
int operationNumber=Integer.parseInt(request.getParameter("OperationNumber"));//打印题目的数量
String question[]=new String[operationNumber];
double result[]=new double[operationNumber];//计算式的结果
for(int i=0;i<operationNumber;i++)//初始化计算式的结果
{
result[i]=0;
question[i]=null;
} DoubleOperation doubleoperation=new DoubleOperation();//初始化.java文件中存储的计算公式个数,问题,答案
doubleoperation.setOperationNumber(operationNumber);
doubleoperation.setQuestion(question);
doubleoperation.setResult(result); for(int i=0;i<operationNumber;i++)
{ character=random.nextInt(4)%4+1;
if(character==1)//计算加法
{
num1=random.nextInt(100)%100;//随机出一个0~100的数
num2=random.nextInt(100)%100;
String number1=String.valueOf(num1);
String number2=String.valueOf(num2);
operat="第("+(i+1)+")题"+number1+"+"+number2+"=";
result[i]=num1+num2;
}
else if(character==2)//计算减法
{
num1=random.nextInt(100)%100;//随机出一个1~100的数
if(num1==0)
num1=num1+2;//若num1=0,则加2
num2=(int)random.nextInt(num1)%(num1);//随机出一个0~num1的数
String number1=String.valueOf(num1);
String number2=String.valueOf(num2);
operat="第("+(i+1)+")题"+number1+"-"+number2+"=";
result[i]=num1-num2;
}
else if(character==3)//计算乘法
{
num1=random.nextInt(9)%9;//随机出一个0~9的数
num2=random.nextInt(9)%9;
String number1=String.valueOf(num1);
String number2=String.valueOf(num2);
operat="第("+(i+1)+")题"+number1+"*"+number2+"=";
result[i]=num1*num2;
}
else //计算除法
{
do{
num1=random.nextInt(81)%81;//随机出一个0~81的数
if(num1>9)
num2=random.nextInt(9)%9;
else
{
if(num1==0)
num1++;
num2=(int)random.nextInt(num1)%(num1);
}
if(num2==0)//当num2=0再重新生成num2
{
num2=num2+1;
}
String number1=String.valueOf(num1);
String number2=String.valueOf(num2);
operat="第("+(i+1)+")题"+number1+"/"+number2+"=";
result[i]=num1/num2;
}while((result[i]>=10)||(num1%num2!=0));//商为10以内的数 } if(Double.valueOf(result[i])>100) {//如果结果大于100或小数位数大于1则不输出
i--;
}
else {
question[i]=operat;
%>
<%=operat %><input type="text" name="child_result<%=i %>" ><br> <br> <% }
} %>
<input type="submit" value="提交" name="提交"> <% doubleoperation.setOperationNumber(operationNumber);
doubleoperation.setQuestion(question);
doubleoperation.setResult(result); %> <%-- <meta http-equiv="refresh" content ="<%=Endtime*60 %>;url=doDoubleOperation.jsp"> --%>
<!-- Endtime分钟后跳转到结果界面 -->
</form>
</body>
</html>

doDoubleOperation.jsp

<%@ page import="com.jaovo.msg.model.DoubleOperation" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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">
<title>Insert title here</title> </head>
<body>
<div style="text-align:right;">
<a href="choose.jsp">题目定制</a>&nbsp;&nbsp;
<a href="Welcome.jsp">退出</a><br><br>
</div> <%
int correct=0;//计算正确的数目
int error=0;//计算错误的数目
int nullerror=0;//没答题的数目
DoubleOperation doubleoperation=new DoubleOperation();
double[] result=doubleoperation.getResult();
String[] question=doubleoperation.getQuestion();
int operationNumber=doubleoperation.getOperationNumber();
System.out.println("count="+operationNumber);
for(int i=0;i<operationNumber;i++)
{
String child_result=request.getParameter("child_result"+i);
%> <%=question[i] %><%=child_result %>&nbsp;&nbsp;&nbsp;
<%
if((null==child_result)||("".equals(child_result)))
{
nullerror++;
%>
&nbsp;&nbsp;&nbsp;正确答案是<%=result[i]%><br><br>
<%
}
else
{
double child_result2=Double.valueOf(child_result);
if(child_result2==result[i])
{
correct++;
%>
√<br><br>
<%
}
else
{
error++;
%>
×&nbsp;&nbsp;&nbsp;正确答案是<%=result[i]%><br><br>
<%
}
}
}
%>
<!-- <iframe src='DoubleOperation.jsp'/> -->
恭喜你!答对了<%=correct %>道题,答错了<%=error %>道题,没答<%=nullerror %>道题!!!
</body>
</html>

四.三元运算

ThreeOperation.jsp

<%@ page import="java.util.Random" %>
<%@ page import="java.lang.Math" %>
<%@ page import="com.jaovo.msg.model.DoubleOperation" %>
<%@ page import="java.math.BigInteger" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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">
<title>三元运算</title>
</head>
<body>
<form action="doDoubleOperation.jsp" method="post">
<div style="text-align:right;">
<a href="choose.jsp">题目定制</a>&nbsp;&nbsp;
<a href="Welcome.jsp">退出</a><br><br>
</div> <%
int character1=0;//第一个运算符+,-,*,/
int character2=0;//第二个运算符
int num1=0;//运算式中第一个数
int num2=0;//运算式中第二个数
int num3=0;//运算式中的第三个数
int correct=0;//计算正确的数目
int error=0;//计算错误的数目
String operat=null;//计算式
int operationNumber=Integer.parseInt(request.getParameter("OperationNumber"));//打印题目的数量
String question[]=new String[operationNumber];
double result[]=new double[operationNumber];//计算式的结果
Random random = new Random();
int Endtime=1; //跳转时间 for(int i=0;i<operationNumber;i++)//初始化计算式的结果
{
result[i]=0;
question[i]=null;
} DoubleOperation doubleoperation=new DoubleOperation();//初始化.java文件中存储的计算公式个数,问题,答案
doubleoperation.setOperationNumber(operationNumber);
doubleoperation.setQuestion(question);
doubleoperation.setResult(result); for(int i=0;i<operationNumber;i++)
{ character1=random.nextInt(4)%4+1;
if(character1==1)//计算加法
{
num1=random.nextInt(100)%100;//随机出一个0~100的数
num2=random.nextInt(100)%100;
String number1=String.valueOf(num1);
String number2=String.valueOf(num2);
operat="第("+(i+1)+")题"+number1+"+"+number2;
result[i]=num1+num2;
}
else if(character1==2)//计算减法
{
num1=random.nextInt(100)%100;//随机出一个1~100的数
if(num1==0)
num1=num1+2;//若num1=0,则加2
num2=(int)random.nextInt(num1)%(num1);//随机出一个0~num1的数
String number1=String.valueOf(num1);
String number2=String.valueOf(num2);
operat="第("+(i+1)+")题"+number1+"-"+number2;
result[i]=num1-num2;
}
else if(character1==3)//计算乘法
{
num1=random.nextInt(9)%9;//随机出一个0~9的数
num2=random.nextInt(9)%9;
String number1=String.valueOf(num1);
String number2=String.valueOf(num2);
operat="第("+(i+1)+")题"+number1+"*"+number2;
result[i]=num1*num2;
}
else //计算除法
{
do{
num1=random.nextInt(81)%81;//随机出一个0~81的数
if(num1>9)
num2=random.nextInt(9)%9;
else
{
if(num1==0)
num1++;
num2=(int)random.nextInt(num1)%(num1);
}
if(num2==0)//当num2=0再重新生成num2
{
num2=num2+1;
}
String number1=String.valueOf(num1);
String number2=String.valueOf(num2);
operat="第("+(i+1)+")题"+number1+"/"+number2;
result[i]=num1/num2;
}while((result[i]>=10)||(num1%num2!=0));//商为10以内的数 } character2=random.nextInt(4)%4+1;
if(character2==1)//计算第二个加号
{
num3=random.nextInt(100)%100;
String number3=String.valueOf(num3);
operat=operat+"+"+num3+"=";
result[i]=result[i]+num3;
}
else if(character2==2)//第二个运算符是减号
{
if(result[i]==0)
result[i]=result[i]+2;
if(result[i]<100){
num3=(int)random.nextInt((int)result[i])%((int)result[i]);//随机出一个小于被减数的数
}
else
{
num3=random.nextInt(100)%100;
}
String number3=String.valueOf(num3);
operat=operat+"-"+num3+"=";
result[i]=result[i]-num3;
}
else if(character2==3)//乘号
{
if(character1==2)//若第一个运算符是减号,则再随机出来一个第二个数与第三个随机的数小于第二个数 num1>=num2*num3 num3<=num1/num2
{
if(num2>9)
{
num2=(int)random.nextInt(9)%(9);
}
if(num1==0)
num3=0;
else
{
if(num2==0) num2=num2+1;
int num4=num1/num2;
num3=(int)random.nextInt(num4)%(num4);
}
if(num3>9)
{
num3=(int)random.nextInt(9)%(9);
}
String number3=String.valueOf(num3);
operat="第("+(i+1)+")题"+num1+"-"+num2+"*"+num3+"=";
result[i]=num1-(num2*num3);
}
else //第一个符号是加乘除。若是加,则先计算num2与num3,若是乘除,则计算顺序不变
{
if(character1==1){//第一个运算符是加号
num3=(int)random.nextInt(100)%(100);
String number3=String.valueOf(num3);
operat=operat+"*"+num3+"=";
result[i]=num1+(num2*num3);
}
else if(character1==3)//第一个符号是乘号,num1*num2<=9
{
String number2,number3;
do{
num2=(int)random.nextInt(9)%(9);
result[i]=num1*num2;
System.out.println("连乘"+result[i]);
number2=String.valueOf(num2);
}while(result[i]>9);
num3=(int)random.nextInt(9)%(9);
number3=String.valueOf(num3);
operat="第("+(i+1)+")题"+num1+"*"+num2+"*"+num3+"=";
result[i]=num1*num2*num3;
}
else {//第一个符号是除号
num3=(int)random.nextInt(9)%(9);
String number3=String.valueOf(num3);
operat=operat+"*"+num3+"=";
result[i]=result[i]*num3;
}
}
}
else//第二个运算符是除号
{ if(num2>81){//第二个符号是除号
num2=(int)random.nextInt(81)%(81);
}
if(character1==1)//第一个运算符是加号,先算num2/num3,再算num+(num2/num3)
{
String number3,number2;
if(num2>81){//第二个符号是除号
num2=(int)random.nextInt(81)%(81);
}
do{ if(num2>9)
num3=random.nextInt(9)%9;
else
{
if(num2==0)
num2++;
num3=(int)random.nextInt(num2)%(num2);
}
if(num3==0)
{
num3=num3+1;
}
number3=String.valueOf(num3);
num2=random.nextInt(81)%(81);
}while(((num2/num3)>=10)||(num2%num3!=0));//商为10以内的数
operat="第("+(i+1)+")题"+num1+"+"+num2+"/"+num3+"=";
result[i]=num1+(num2/num3);
}
else if(character1==2)//第一个运算式减号,则num1-num2/num3
{
String number3=null;
int k=0;
if(num2>81){//第二个符号是除号
num2=(int)random.nextInt(81)%(81);
}
do{
if(num2>9)
num3=random.nextInt(9)%9;
else
{
if(num2==0)
num2++;
num3=(int)random.nextInt(num2)%(num2);
} if(num3==0)
{
num3=num3+1;
}
number3=String.valueOf(num3);
num2=(int)random.nextInt(81)%(81); }while(((num2/num3)>=10)||(num2%num3!=0)||((num2/num3)>num1));//商为10以内的数
operat="第("+(i+1)+")题"+num1+"-"+num2+"/"+num3+"=";
result[i]=num1-(num2/num3);
}
else if(character1==4)//第一个运算符是除号,按顺序计算
{
String number3;
do{
if(result[i]>9)
num3=random.nextInt(9)%9;
else
{
if(result[i]==0)
num2++;
num3=(int)random.nextInt((int)result[i])%((int)result[i]);
}
if(num3==0)
{
num3=num3+1;
}
number3=String.valueOf(num3); }while(((result[i]/num3)>=10)||(result[i]%num3!=0));//商为10以内的数
operat=operat+"/"+number3+"=";
result[i]=result[i]/num3;
}
else //第一个运算符是乘号,按顺序计算
{
do{
if(result[i]>9)
num3=random.nextInt(9)%9;
else
{
if(result[i]==0)
result[i]++;
num3=(int)random.nextInt((int)result[i])%((int)result[i]);
}
if(num3==0)
{
num3=num3+1;
}
String number3=String.valueOf(num3);
}while(((result[i]/num3)>=10)||(result[i]%num3!=0));//商为10以内的数
operat=operat+"/"+num3+"=";
result[i]=result[i]/num3;
}
}
if(Double.valueOf(result[i])>100) {//如果结果大于100或小数位数大于1则不输出
i--;
}
else {
question[i]=operat;
System.out.println(operat+result[i]);
%>
<%=operat %><input type="text" name="child_result<%=i %>" ><br> <br>
<% }
} %>
<input type="submit" value="提交" name="提交"> <% doubleoperation.setOperationNumber(operationNumber);
doubleoperation.setQuestion(question);
doubleoperation.setResult(result); %>
</form>
</body>
</html>

doThreeOperation.jsp

<%@ page import="com.jaovo.msg.model.DoubleOperation" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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">
<title>Insert title here</title>
</head>
<body>
<div style="text-align:right;">
<a href="choose.jsp">题目定制</a>&nbsp;&nbsp;
<a href="Welcome.jsp">退出</a><br><br>
</div> <%
int correct=0;//计算正确的数目
int error=0;//计算错误的数目
int nullerror=0;//没答题的数目
DoubleOperation doubleoperation=new DoubleOperation();
double[] result=doubleoperation.getResult();
String[] question=doubleoperation.getQuestion();
int operationNumber=doubleoperation.getOperationNumber();
System.out.println("count="+operationNumber);
for(int i=0;i<operationNumber;i++)
{
String child_result=request.getParameter("child_result"+i);
%> <%=question[i] %><%=child_result %>&nbsp;&nbsp;&nbsp;
<%
if((null==child_result)||("".equals(child_result)))
{
nullerror++;
%>
&nbsp;&nbsp;&nbsp;正确答案是<%=result[i] %><br><br>
<%
}
else
{
double child_result2=Double.valueOf(child_result);
if(child_result2==result[i])
{
correct++;
%>
√<br><br>
<%
}
else
{
error++;
%>
×&nbsp;&nbsp;&nbsp;正确答案是<%=result[i]%><br><br>
<%
}
}
} %>
恭喜你!答对了<%=correct %>道题,答错了<%=error %>道题,没答<%=nullerror %>道题!!! </body>
</html>

四则运算二(java web)的更多相关文章

  1. Java Web高性能开发(二)

    今日要闻: 性价比是个骗局: 对某个产品学上三五天个把月,然后就要花最少的钱买最多最好的东西占最大的便宜. 感谢万能的互联网,他顺利得手,顺便享受了智商上的无上满足以及居高临下的优越感--你们一千块买 ...

  2. Java Web 前端高性能优化(二)

    一.上文回顾 上回我们主要从图片的合并.压缩等方面介绍前端性能优化问题(详见Java Web 前端高性能优化(一)) 本次我们主要从图像BASE64 编码.GZIP压缩.懒加载与预加载以及 OneAP ...

  3. JAVA Web 之 struts2文件上传下载演示(二)(转)

    JAVA Web 之 struts2文件上传下载演示(二) 一.文件上传演示 详细查看本人的另一篇博客 http://titanseason.iteye.com/blog/1489397 二.文件下载 ...

  4. Java Web项目(Extjs)报错二

    1.Java Web项目(Extjs)报错二 具体报错如下: usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ...

  5. Java Web入门学习(二) Eclipse的配置

    Java Web学习(二) Eclipse的配置 一.下载Eclipse 1.进入Eclipse官网,进行下载 上图,下载Eclipse IDE for JaveEE Developers 版本,然后 ...

  6. java web 二维码生成

    pom支持: <!-- 二维码支持包 start--> <dependency> <groupId>com.google.zxing</groupId> ...

  7. Java Web Servlet知识点讲解(二)

    一.定义Servlet: public class HelloServlet extends HttpServlet { @Override  protected void doGet(HttpSer ...

  8. Java Web学习(十二)Tomcat核心

    一.引言 其实按道理来说,学习Java web应该在前面的篇幅就写有关tomcat相关的知识点,不过近期看了一些资料,觉得以前仅仅只是知道用tomcat去发布我的项目,一些细节的东西也没有好好总结,这 ...

  9. Java web与web gis学习笔记(二)——百度地图API调用

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

  10. Java web中常见编码乱码问题(二)

    根据上篇记录Java web中常见编码乱码问题(一), 接着记录乱码案例: 案例分析:   2.输出流写入内容或者输入流读取内容时乱码(内容中有中文) 原因分析: a. 如果是按字节写入或读取时乱码, ...

随机推荐

  1. phpstorm 代码按列对齐

    设置方式: Preference... -> Editor -> CodeStyle -> PHP -> Other -> Align key-value pairs

  2. HihoCoder1673 : 01间隔矩阵([Offer收割]编程练习赛41)(单调队列)

    描述 给定一个N × M的01矩阵,小Hi希望从中找到一个01间隔的子矩阵,并且子矩阵的面积越大越好. 例如对于 0101010 1000101 0101010 1010101 0101010 在右侧 ...

  3. scala & spark实战

    java.lang.Long is not a valid external type for schema of string   java.lang.RuntimeException: Error ...

  4. Go 方法和接口

    转自:http://studygolang.com/topics/549 Go 没有类,但可以在结构体类型上定义方法. package main import ( "fmt" &q ...

  5. Word直接发表博客测试

    这是我现在使用的VSCode! 这是另一段测试内容!

  6. 从0起步 BI 第一课

    收集 BI 学习资料(了解,书籍,示例demo) 专业人士: http://www.cnblogs.com/aspnetx/p/3189029.html http://www.flybi.net/ h ...

  7. display:block inline-block inlined的区别

    一.首先要了解什么是块级元素与行级元素 块级元素 会占领页面的一行,其后多个block元素自动换行. 可以设置width,height,设置了width后同样也占领一行.同样也可以设置   margi ...

  8. ue4 碰撞检测测试

    记录几条物理相关 测试条件,1使用setActorLocation移动,3使用控制器的移动 1 moveCube  2 targetCube  3 Character 两个Cube的碰撞事件 1和2的 ...

  9. 51nod1117(简单huffman tree)

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1117 题意:中文题诶- 思路:简单huffman tree ...

  10. 使用docker搭建项目环境

    # 清屏 clear # 查看当前文件夹下的列表 ls # 跳目录 cd ~ 代表当前用户文件夹 cd / 代表根目录 cd..返回上一级目录 cd #sudo 使用超级管理员创建文件夹 不加sudo ...