使用PHP,将这样的字符串转换为"123"整数的最快方法是什么?
为什么这种特殊方法最快?如果它获得意外输入会发生什么,例如"hello"数组?
我有一个新的应用程序,我将在哪里生成一个包含表格,图形,目录和文本的Word文档.什么是一个很好的API用于此?你有多确定它支持图形,ToC和表格?使用它们有什么隐藏的问题?
一些澄清:
如果我可以从模板文档开始,只需用表格,图形等填充一些空格,那就太好了.
编辑:下面有几个很好的答案,每个都有自己的错误,就我目前的情况而言.很难从他们那里选择"最终答案".我想我会把它打开,并希望能够创造出更好的解决方案.
编辑:OpenOffice UNO项目似乎与我的要求最接近.虽然POI肯定是主流,但它对我想要的东西来说太不成熟了.
我把这个片段从网上偷走了.但它看起来仅限于4096字节并且是非常难看的IMO.谁知道更好的方法?我实际上正在使用Groovy btw ...
String streamToString(InputStream input) {
StringBuffer out = new StringBuffer();
byte[] b = new byte[4096];
for (int n; (n = input.read(b)) != -1;) {
out.append(new String(b, 0, n));
}
return out.toString();
}
Run Code Online (Sandbox Code Playgroud)
编辑:
我在Groovy中找到了一个更好的解决方案:
InputStream exportTemplateStream = getClass().getClassLoader().getResourceAsStream("export.template")
assert exportTemplateStream: "[export.template stream] resource not found"
String exportTemplate = exportTemplateStream.text
Run Code Online (Sandbox Code Playgroud) Sonar是一个应用程序,用于将来自多个静态和测试分析工具的输出集成到软件质量的全面概述中.
不幸的是,大多数这些分析工具(PDM,FindBugs等)都不支持Groovy,而且还支持Grails.
我们找到了名为CodeNarc和GMetrics的工具,它们执行了一些分析,但没有进行测试覆盖,我们正在开发一个Sonar插件来导入CodeNarc输出.正如我所说,这是不完整的.
有谁知道一套更好的复杂性/基于规则的静态分析工具可以处理Groovy,以及Grails测试覆盖率指标?当然,有一个Sonar插件可以在输出中读取它是最好的.
在sql server中,如果我将varchar列定义为长度为32或128,它会有所不同吗?
Grails应用程序的哪些部分需要存储在源代码控制中?需要一些明显的部分:
现在我们达到以下问题:
我不打算开始关于.project的宗教战争,所以请忽略它,但是有什么"隐藏的"项目文件我需要担心,还有插件问题?
转换为社区维基,因为新版本的Grails已经改变了一些解决方案,特别是关于插件.
我是Grails的新手.我有一个Person域类:
class Person {
String firstName
String lastName
String gender
Date dateOfBirth
}
Run Code Online (Sandbox Code Playgroud)
并且想知道我是否可以为属性定义可能的值 - 比如性别为{M,F,U},这样当为Person控制器使用动态脚手架时,这三个值将在组合框中列出.
在这里,我只是想知道Grails框架中是否有这样的功能?如果存在此功能,那么我该如何使用它?
我正在使用JSF/Facelets,我正在尝试迭代一些我保留在HashMap中的Document对象(自定义对象).加载页面时,我收到错误"类型java.util.HashMap $ Values"中找不到"属性'名称".这是我的支持bean中的内容:
private Map<String, Document> documents = new HashMap<String, Document>();
public Collection<Document> getDocuments(){
return documents.values();
}
Run Code Online (Sandbox Code Playgroud)
在我的xhtml页面中:
<h:dataTable id="documentTable"
value="#{DocumentManager.allDocuments}"
var="doc" rowClasses="list-row-odd, list-row-even"
headerClass="table-header" styleClass="bordered">
<h:column id="col_name">
<f:facet name="header">Name</f:facet>
${doc.name}
</h:column>
</h:dataTable>
Run Code Online (Sandbox Code Playgroud)
如果我将getDocuments函数更改为以下,它可以工作(意味着表显示没有错误),但我不知道为什么我需要将值放在JSF/Facelets页面的列表中才能正确显示.
public List<Document> getDocuments(){
List<Document> rtrn = new ArrayList<Document>();
for(Document doc : documents.values())
rtrn.add(doc);
return rtrn;
}
Run Code Online (Sandbox Code Playgroud)
我不应该能够迭代收藏吗?
我成功地使用“JAVAMail”读取 gmail 电子邮件的内容,并且能够将其存储在字符串中。现在我想从内容(字符串)中获取特定的注册 URL。我该怎么做,字符串包含大量标签和 href,但我只想提取下面提到的语句中存在的单词“单击此处”的超链接中提供的 URL
"Please <a class="h5" href="https://newstaging.mobilous.com/en/user-register/******" target="_blank">click here</a> to complete your registration".
Run Code Online (Sandbox Code Playgroud)
在超链接“单击此处”上的 url
href="https://newstaging.mobilous.com/en/user-register/******" target="_blank"
我已经使用以下代码尝试过
package email;
import java.util.ArrayList;
import java.util.Properties;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import javax.mail.Store;
public class emailAccess {
public static void check(String host, String storeType, String user,
String password)
{
try {
//create properties field
Properties properties = new Properties();
properties.put("mail.imap.host",host);
properties.put("mail.imap.port", "993");
properties.put("mail.imap.starttls.enable", "true");
properties.setProperty("mail.imap.socketFactory.class","javax.net.ssl.SSLSocketFactory");
properties.setProperty("mail.imap.socketFactory.fallback", "false");
properties.setProperty("mail.imap.socketFactory.port",String.valueOf(993));
Session emailSession …Run Code Online (Sandbox Code Playgroud) 我需要从安全的Web位置将文件存入我的应用程序的内存中.我有要捕获的文件的URL,但似乎无法解决安全问题.这是Cookbook示例页面中的代码:
def download(address)
{
def file = new FileOutputStream(address.tokenize("/")[-1])
def out = new BufferedOutputStream(file)
out << new URL(address).openStream()
out.close()
}
Run Code Online (Sandbox Code Playgroud)
这是我的"内存"版本的同一个函数应该返回文件内容的字节数组:
def downloadIntoMem(address)
{ // btw, how frickin powerful is Groovy to do this in 3 lines (or less)
def out = new ByteArrayOutputStream()
out << new URL(address).openStream()
out.toByteArray()
}
Run Code Online (Sandbox Code Playgroud)
当我针对一个不安全的URL(选择你可以在网上找到的任何图像文件)尝试这个时,它的工作正常.但是,如果我选择需要用户/密码的URL,则不要去.
好的,在这方面做了一些工作.似乎Authenticator方法确实有效,但是以一种全面的方式.第一次访问URL时,我得到一个302响应,其中包含一个登录服务器的位置.如果我使用Authenticator集访问该位置,那么我将获得另一个带有Cookie的302,并将该位置设置回原始URL.如果我然后访问原始,下载正确.
所以,我必须模仿一下浏览器,但最终它一切正常.
使这个社区维基,所以其他人可以添加其他方法.
谢谢!
是否可以<select>在域的域中将可用选项填充为constraints
static constraints = {
variable(inList: ["value1", "value2", "value3"])
}
Run Code Online (Sandbox Code Playgroud) 将鼠标悬停在菜单项上时,以下代码会显示子菜单.由于它使用计时器,如果你没有足够快地选择子菜单项,子菜单项就会消失.我宁愿让它高亮显示它所在的菜单选项并保留子菜单项,直到您将鼠标悬停在其上或单击另一个主菜单项:
$(document).ready(function(){Nifty("#menu a","small top transparent"); Nifty("#outcontent","medium bottom transparent");
function hideSubMenu() {
$("#sub-menu-content").fadeOut('slow');
hideSubMenu.timeout = 0;
}
$('#menu a').hover(function() { //start function when any link is clicked
if (hideSubMenu.timeout) clearTimeout(hideSubMenu.timeout);
hideSubMenu.timeout = 0;
$("#sub-menu-content").hide();
var html = '<ul>' + $(this).next('ul.sub-menu').html() + '</ul> ';
$("#sub-menu-content").html(html); //show the html inside .content div
$("#sub-menu-content").fadeIn('fast'); //animation
},function(){
hideSubMenu.timeout = setTimeout(hideSubMenu, 800);
}); //close click(
$('#sub-menu-content').hover(function() {
if (hideSubMenu.timeout) clearTimeout(hideSubMenu.timeout);
hideSubMenu.timeout = 0;
},function(){
hideSubMenu.timeout = setTimeout(hideSubMenu, 800);
}); //close click(
}); //close $(
Run Code Online (Sandbox Code Playgroud)
要看到它的实际效果:
http://cruisecontrolledmarketing.com/test/welcome/login 用户:会员密码:rebmem …