我想读一个非常大的文件的最后n行,而不使用Java将整个文件读入任何缓冲区/内存区域。 我环顾了JDK API和Apache Commons I / O,无法find适合于此目的的应用程序。 我正在考虑在UNIX中使用tail还是less。 我不认为他们加载整个文件,然后显示文件的最后几行。 在Java中也应该有类似的方法来做同样的事情。
我正在阅读“ 更好,更快,更轻的Java ”(由Bruce Tate和Justin Gehtland撰写),并且熟悉敏捷类团队的可读性要求,例如Robert Martin在其干净的编码书中所讨论的内容。 在现在的团队中,我被明确地告诉不要使用+运算符,因为它在运行时创build额外的(和不必要的)string对象。 但是这篇文章 ,在'04年写回来谈到如何对象分配是关于10个机器指令。 (基本上免费) 它还谈到GC如何帮助降低这种环境下的成本。 什么是使用+ , StringBuilder或StringBuffer之间的实际性能折衷? (在我的情况下,它只是StringBuffer因为我们仅限于Java 1.4.2。) 对于我来说, StringBuffer结果是丑陋的,可读性较差的代码,正如Tate书中的几个例子所演示的那样。 而且StringBuffer是线程同步的,似乎有自己的成本超过使用+运算符的“危险”。 思想/意见?
我想重写一个文件的内容。 我到目前为止想到的是这样的: 保存文件名称 删除现有的文件 使用相同的名称创build一个新的空文件 将所需内容写入空文件 这是最好的方法吗? 还是有一个更直接的方法,就是不必删除和创build文件,而只是简单地改变内容?
我想在Java控制台应用程序中将用户剪贴板设置为string。 有任何想法吗?
我有以下的Java正则expression式,我没有写,我试图修改: ^class-map(?:(\\s+match-all)|(\\s+match-any))?(\\s+[\\x21-\\x7e]{1,40})$ ^ ^ 这和这个很像 注意第一个问号。 这是否意味着该组是可选的? 相应的后面已经有一个问号了) 。 冒号在正则expression式中有特殊意义吗? 正则expression式编译得很好,而且已经有JUnittesting显示它是如何工作的。 这只是我有点困惑,为什么第一个问号和冒号在那里。
所以我使用下面的代码在我的绘图方法中绘制了android地图中的这个三angular形: paint.setARGB(255, 153, 29, 29); paint.setStyle(Paint.Style.FILL_AND_STROKE); paint.setAntiAlias(true); Path path = new Path(); path.moveTo(point1_returned.x, point1_returned.y); path.lineTo(point2_returned.x, point2_returned.y); path.moveTo(point2_returned.x, point2_returned.y); path.lineTo(point3_returned.x, point3_returned.y); path.moveTo(point3_returned.x, point3_returned.y); path.lineTo(point1_returned.x, point1_returned.y); path.close(); canvas.drawPath(path, paint); pointX_returned是我从字段中获得的坐标。 他们基本上是纬度和经度。 结果是一个很好的三angular形,但内幕是空的,所以我可以看到地图。 有办法填补它以某种方式?
有没有内置的方法可以将string转换为Title Case格式?
我怎样才能在Java中获得用户名/login名? 这是我试过的代码… try{ LoginContext lc = new LoginContext(appName,new TextCallbackHandler()); lc.login(); Subject subject = lc.getSubject(); Principal principals[] = (Principal[])subject.getPrincipals().toArray(new Principal[0]); for (int i=0; i<principals.length; i++) { if (principals[i] instanceof NTUserPrincipal || principals[i] instanceof UnixPrincipal) { String loggedInUserName = principals[i].getName(); } } } catch(SecurityException se){ System.out.println("SecurityException: " + se.getMessage()); } 我尝试运行此代码时遇到SecurityException 。 有人能告诉我是否正朝着正确的方向前进,并帮助我理解这个问题。
我正在尝试用类似的子句写一个JPQL查询: LIKE '%:code%' 我想有代码= 4,并find 455 554 646 … 我无法通过:code = '%value%' namedQuery.setParameter("%" + this.value + "%"); 因为在另一个地方我需要:value没有包裹的%字符。 任何帮助?
如何将一个SVG文件转换为PDF编程? (我需要在生成PDF之前在某些方面改变SVG,所以只需使用工具预转换它就不够了。) 理想情况下使用Java,但Perl或PHP也可以。 显然我基本上是考虑Apache的FOP和Batik与Java。 不过无论我search多长时间,我都找不到一个简单的介绍。 像SVGConverter这样的描述,例如“定义可以转换部分或全部GraphicContext的类的接口”,但我不知道这意味着什么。 我有这种感觉,必须有一个API可以很简单地做到这一点,由FOP或Batik提供,但目前我还找不到它(或者实际上它不存在)。 就我所需要的支持的SVGfunction而言,该文件有一些path,它们被一些线性渐变填充。 理想情况下,如果我可以通过SVG作为一个DOM文档,这将是理想的; 那么我会加载我的模板SVG文件,改变它的用户指定,然后生成PDF。