Tag: java

是否有一个Java XML API可以parsing文档而不parsing字符实体?

我有程序需要parsing包含字符实体的XML。 程序本身并不需要让它们解决,而且它们的列表很大,并且会改变,所以我想避免对这些实体的明确的支持。 这是一个简单的例子: <?xml version="1.0" encoding="UTF-8"?> <xml>Hello there &something;</xml> 是否有一个Java XML API可以parsing文档而不parsing(非标准)字符实体? 理想情况下,它会把它们转化为一个特殊的事件或对象,可以专门处理,但我会find一个select,会默默地压制他们。 答案和例子: Skaffman给了我答案:使用IS_REPLACING_ENTITY_REFERENCES设置为false的StAXparsing器。 这里是我鞭打试验的代码: XMLInputFactory inputFactory = XMLInputFactory.newInstance(); inputFactory.setProperty(XMLInputFactory.IS_REPLACING_ENTITY_REFERENCES, false); XMLEventReader reader = inputFactory.createXMLEventReader( new FileInputStream("your file here")); while (reader.hasNext()) { XMLEvent event = reader.nextEvent(); if (event.isEntityReference()) { EntityReference ref = (EntityReference) event; System.out.println("Entity Reference: " + ref.getName()); } } 对于上面的XML,它将打印“ Entity Reference: […]

System.in.read实际返回什么?

什么: System.in.read() 回报? 该文件说: 返回:数据的下一个字节,如果到达stream的末尾,则返回-1。 但是,例如,如果我input: 10我回来49 。 这是为什么 ?

Java:在封闭范围内定义的局部variablesmi必须是最终的或有效的最终的

我得到的错误,如主题,我恳请问你如何修复它…错误是在menuItem循环,我尝试设置textArea前景颜色从menuItemselect一个:(颜色[米]) String[] colors = { "blue", "yellow", "orange", "red", "white", "black", "green", }; JMenu mnForeground = new JMenu("Foreground"); for (int mi=0; mi<colors.length; mi++){ String pos = Character.toUpperCase(colors[mi].charAt(0)) + colors[mi].substring(1); JMenuItem Jmi =new JMenuItem(pos); Jmi.setIcon(new IconA(colors[mi])); Jmi.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { JMenuItem item = (JMenuItem) e.getSource(); IconA icon = (IconA) item.getIcon(); Color […]

为什么BitmapFactory.decodeByteArray返回null?

这是简单的代码,而不是获得结果来设置位图,我得到空。 谁能告诉我我犯了什么错误? String test = "test"; byte[] byteA = test.getBytes(); Bitmap bmp = BitmapFactory.decodeByteArray(byteA, 0, byteA.length); //<- I get null here ImageView image = (ImageView) findViewById(R.id.image); image.setImageBitmap(bmp); UPDATE 好的,所以我不能像我想的那样把文本转换成图像。 这样呢? 这会创build一个位图? Paint paint = new Paint(); paint.setStyle(Paint.Style.FILL); paint.setColor(Color.RED); paint.setTextSize(16); paint.setAntiAlias(true); paint.setTypeface(Typeface.MONOSPACE); Bitmap bm = Bitmap.createBitmap(16, 16, Bitmap.Config.ALPHA_8); float x = bm.getWidth(); float y = bm.getHeight(); […]

在没有按下在控制台中input按键获取

我有一个用Java编写的控制台程序,它可以响应单个按键,但是用户不会按下回车键。 我正在打乒乓球..所以需要上下键移动蝙蝠的东西。 替代方法欢迎! (除了做一个GUI) – 编辑: 我只会在UNIX系统(OSX和Linux)上运行我的程序,所以我想我可以把terminal设置为“原始”模式: stty raw 当我运行程序之前,input到控制台它的工作原理! 但是我需要Java来自动完成,所以我尝试了这个: Runtime.getRuntime().exec("stty raw"); 它什么都不做……可能是因为JVM只是把它作为一个单独的进程运行,而不是作为这个terminal内的一个进程。

Java是否区分大小写?

我在某处读到Java是区分大小写的。 我一直无法证实这一点。 是吗? 如果是这样,为什么?

不重复的随机数字

作为我的项目的一部分,我需要通过给出一组数字来创build不重复的2或3位数的随机数。 我不想实现一个列表或数组,因为我应该为每个函数调用得到一个随机数。 我试图用Java的SecureRandom类来做到这一点。 我也得到了一些网站的帮助,但是我陷入了困境,我们可以洗牌VALUES并完成它吗? 但我不知道如何做到这一点。 任何人都可以帮我吗? import java.security.SecureRandom; public class RandomNumber { private static final RandomNumber rnd= new RandomNumber(); private static final char[] VALUES = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; private static final SecureRandom srn= new SecureRandom(); public String createID() { byte[] bytes = new byte[3]; srn.nextBytes(bytes); […]

用java中的另一个线程刷新GUI(swing)

我有一个主要的程序,其中GUI是基于swing,并根据四个状态之一的GUI元素有不同的参数。 public class Frame extends JFrame implements Runnable { Status status = 1; … @Override public void run() { switch (status) { case 1: … case 2: … } public void updateGUI(Status status) { this.status = status; SwingUtilities.invokeLater(this); } 如果我想刷新GUI调用只有适当的参数的updateGUI,一切都很好。 但是程序还会创build一个额外的线程,在处理完相关的数据之后,应该更改GUI主程序。 不幸的是我不能在这个线程中调用updateGUI(..)方法。 我知道我可以使用invokeLater或SwingWorker来刷新,但有超过10个元素,所以我宁愿使用方法udpateGUI()。 我会很感激任何提示。

我怎样才能检测在Java控制台中的箭头键不在GUI?

我正在写一个应用程序,我需要检测它里面的箭头键。 C ++具有getch()函数。 我们想要input,然后添加一个ASCII值的检查。 我们如何检测input箭头键? 谢谢

在hadoop中将文件读取为单个logging

我有很大的不。 的小文件,我想使用CombineFileInputFormat合并文件,使每个文件数据作为我的MR作业中的单个logging。 我已经遵循http://yaseminavcular.blogspot.in/2011/03/many-small-input-files.html,并试图将其转换为新的API 我面临着两个问题: a)我只用2个小文件testing,还有2个映射器被解雇。 我预计1 b)每一行都是单个logging,我想整个文件作为单个logging。 这可能是痛苦的,但请看下面的代码。 在hadoop中我还是一个天真的人 司机class public class MRDriver extends Configured implements Tool { @Override public int run(String[] args) throws Exception { FileSystem fs = new Path(".").getFileSystem(getConf()); fs.printStatistics(); Job job = new Job(getConf()); job.setJobName("Enron MR"); job.setMapperClass(EnronMailReadMapper.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(IntWritable.class); job.setNumReduceTasks(0); job.setJarByClass(EnronMailReadMapper.class); RawCombineFileInputFormat.addInputPath(job, new Path(args[0])); job.setOutputFormatClass(TextOutputFormat.class); TextOutputFormat.setOutputPath(job, new Path(args[1])); return job.waitForCompletion(true) ? 0 […]