java代码实现诗词 java如何写出优秀代码

Java:某文件中是一首诗,每句诗中都包含一个错别字,编写程序改正过来(使用randomFile)

package test;

创新互联于2013年开始,是专业互联网技术服务公司,拥有项目网站设计、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元新市做网站,已为上家服务,为新市各地企业和个人服务,联系电话:18980820575

import java.io.File;

import java.io.FileNotFoundException;

import java.io.IOException;

import java.io.RandomAccessFile;

public class test2 {

static void check(char[] ch,char[] ch2,RandomAccessFile raf){//检查

for (int i = 0; i  ch2.length; i++) {

if(ch[i] != ch2[i]){

modify(ch,i, raf);

}

}

}

static void modify(char[] ch,int i ,RandomAccessFile raf){//修改

try {

raf.seek(i*2);//跳指针

raf.write(String.valueOf(ch[i]).getBytes());//写正确答案

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public static void main(String[] args) {

File f = new File("D://李白静夜思.txt");//注意文件内的内容也是一行,没有回车

RandomAccessFile raf;

byte[] b = new byte[48];

String text = "床前明月光,疑是地上霜。举头望明月,低头思故乡。";

char[] ch = text.toCharArray();//正确版本

char[] ch2;//错误版本

try {

raf = new RandomAccessFile(f, "rw");

for(int i=0;ib.length;i++){  

b[i] = raf.readByte() ; // 读取一个字节  

}  

String text2 = new String(b) ; 

ch2 = text2.toCharArray();//把读来的数据放入错误数组

check(ch, ch2,raf);

raf.close();

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

纯手打,望采纳(我文件是放在D盘的根目录下的)

用java完成唐诗测试游戏:从每句随机去掉一个字_代替,然后将去掉的字组合为4种选项,让用户选择正确答案。

Java程序:

import java.util.Random;

public class Test0201 {

public static void main(String[] args) {

String[] poem = new String[]{"赠孟浩然",

"吾爱孟夫子", "风流天下闻",

"红颜弃轩冕", "白首卧松云",

"醉月频中圣", "迷花不事君",

"高山安可仰", "徒此揖清芬"};

String[] keys = new String[poem.length-1]; //存储每句中抽出的单字

String[] items = new String[4]; //存储4种备选答案选项

String correctItem;

int i;

drawKey(poem, keys);

correctItem = generateItems(keys, items);

System.out.println("以下唐诗的每一句都少一个字,请选择合适的选项,将各选项中的字接顺序填充后,形成完整的唐诗:\n");

System.out.println(poem[0]);

for(i=1; ipoem.length; i++){

System.out.println(poem[i] + (i%2==1 ?"," : "。"));

}

System.out.println();

for(i=0; iitems.length; i++){

System.out.println(items[i]);

}

System.out.print("\n正确答案:" + correctItem);

}

//从各句唐诗中抽取一个字并存储,将该字用“_”代替

public static void drawKey(String[] poem, String[] keys){

int i, pos;

Random rand = new Random();

for(i=1; ipoem.length; i++){

pos=rand.nextInt(poem[i].length());

keys[i-1] = poem[i].substring(pos, pos+1);

poem[i] = poem[i].substring(0, pos) + "_" + poem[i].substring(pos+1);

}

}

//组成备选答案选项,返回正确答案

public static String generateItems(String[] keys, String[] items){

Random rand = new Random();

int[] arr;

int n = keys.length;

int pos = rand.nextInt(4); //正确答案的位置

int i, j;

StringBuffer buff = new StringBuffer();

for(i=0; in; i++){

buff.append(keys[i]);

}

items[pos] = (char)('A' + pos) + ". " + buff.toString();

buff.delete(0, n);

for(i=0; i4; i++){

if(i == pos){

continue;

}

arr = generateArray(n);

for(j=0; jn; j++){

buff.append(keys[arr[j]]);

}

items[i] =(char)('A' + i) + ". " + buff.toString();

buff.delete(0, n);

}

return items[pos];

}

//生成由n个数字[0, n-1]组成的随机数数组

private static int[] generateArray(int n){

int[] arr = new int[n];

Random rand = new Random();

int i;

for(i=0; in;){

arr[i] = rand.nextInt(n);

if(isExistFigure(arr, i, arr[i])){

continue;

}

i++;

}

return arr;

}

//判断某数字在数组中是否存在

private static boolean isExistFigure(int[] arr, int n, int key){

for(int i=0; in; i++){

if(arr[i] == key){

return true;

}

}

return false;

}

}

运行测试:

第一次测试:

以下唐诗的每一句都少一个字,请选择合适的选项,将各选项中的字接顺序填充后,形成完整的唐诗:

赠孟浩然

吾_孟夫子,

_流天下闻。

红颜弃轩_,

白首卧松_。

醉月频中_,

迷花不事_。

高山安_仰,

_此揖清芬。

A. 爱徒君风可云冕圣

B. 云徒君风冕圣爱可

C. 君冕圣可风云徒爱

D. 爱风冕云圣君可徒

正确答案:D. 爱风冕云圣君可徒

第二次测试:

以下唐诗的每一句都少一个字,请选择合适的选项,将各选项中的字接顺序填充后,形成完整的唐诗:

赠孟浩然

吾爱孟夫_,

风流天下_。

红颜弃_冕,

_首卧松云。

醉月频_圣,

迷花_事君。

高山_可仰,

徒此揖_芬。

A. 不白闻子中轩清安

B. 子闻轩白中不安清

C. 白不闻轩清安子中

D. 清子不白中安轩闻

正确答案:B. 子闻轩白中不安清

用hbuilder写古诗的代码

可以。

HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。HBuilder的编写用到了Java、C、Web和Ruby。HBuilder本身主体是由Java编写,它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。快,是HBuilder的最大优势,通过完整的语法提示和代码输入法、代码块等,大幅提升HTML、js、css的开发效率。


分享题目:java代码实现诗词 java如何写出优秀代码
文章URL:http://azwzsj.com/article/ddcpdso.html