gpt4 book ai didi

java - 不打印的数字 [] 出现在文本文件中

转载 作者:行者123 更新时间:2023-12-01 19:20:50 25 4
gpt4 key购买 nike

在下面的代码中,我以 jsp 形式输入的问题和答案都输入到文本文件中。但前面必须打印数字

<%@ page language="java" import="java.io.*" errorPage="" %>
<%

/* String num=request.getParameter("qnum");
session.setAttribute("quesnum",num);*/

String q=request.getParameter("qn");
session.setAttribute("question",q);

String opt1=request.getParameter("A");
session.setAttribute("a",opt1);

String opt2=request.getParameter("B");
session.setAttribute("b",opt2);

String opt3=request.getParameter("C");
session.setAttribute("c",opt3);

String opt4=request.getParameter("D");
session.setAttribute("d",opt4);

String ans=request.getParameter("ANS");
session.setAttribute("answer",ans);


%>

<html>
<head>
<title>Text File</title>
</head>

<body>
<%



File f=new File("D:\\Program Files\\Tomcat 6.0\\webapps\\ROOT\\tst.txt");
f.createNewFile();
try
{

BufferedWriter bw=new BufferedWriter(new FileWriter(f,true));

int num=1;

bw.newLine();
while(num<100)
{

bw.write((char)num);
bw.write("|");
bw.write(q);

bw.write("|");
bw.write(opt1);

bw.write("|");
bw.write(opt2);

bw.write("|");
bw.write(opt3);

bw.write("|");
bw.write(opt4);

bw.write("|");
bw.write(ans);

bw.flush();


bw.close();
}

num++;
}
catch(Exception e)
{
}
%>

</body>
</html>

Output must be
1|quest1|option a |option b|option c|option d| and:a
2|quest2|option a |option b|option c|option d| and:b
3|quest3|option a |option b|option c|option d| and:d

but instead of 1 2 3 i get
[]|quest1|option a |option b|option c|option d| and:a

[] 符号出现在文本文件中。有什么问题吗?

最佳答案

您正在将 1 到 100 之间的 int 数字转换为 char 作为字节值。这可能不是您想要的,因为这(假设是西方语言)从一开始就相当于 ASCII 表。前 32 个左右的字符是不可打印的内容,例如换行符、蜂鸣声等,它们显然不会进入您的输出。

所以而不是

bw.write((char)i);

您需要将 int 转换为 String,例如。 G。像这样:

bw.write(String.valueOf(i));

关于java - 不打印的数字 [] 出现在文本文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4343253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com