我有以下代码:
module DataMapper
module Resource
@@page_size = 25
attr_accessor :current_page
attr_accessor :next_page
attr_accessor :prev_page
def first_page?
@prev_page
end
def last_page?
@next_page
end
def self.paginate(page)
if(page && page.to_i > 0)
@current_page = page.to_i - 1
else
@current_page = 0
end
entites = self.all(:offset => @current_page * @@page_size, :limit => @@page_size + 1)
if @current_page > 0
@prev_page = @current_page
end
if entites.size == @@page_size + 1
entites.pop
@next_page = (@current_page || 1) + 2
end
entites
end
end
Run Code Online (Sandbox Code Playgroud)
结束
然后我打电话给#paginate:
@photos …Run Code Online (Sandbox Code Playgroud) 给出以下XML文档:
<Include>
<Feature Title="A">
<Feature Title="1" />
<Feature Title="2" />
</Feature>
<Feature Title="B">
<Feature Title="3">
<Feature Title="i" />
<Feature Title="ii" />
</Feature>
<Feature Title="4" />
</Feature>
</Include>
Run Code Online (Sandbox Code Playgroud)
我需要生成一个看起来像这样的文本文件:
; Header
A
A/1
A/2
B
B/3
B/3/i
B/3/ii
B/4
Run Code Online (Sandbox Code Playgroud)
我实现这一目标的最佳尝试是XSL样式表:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="text" omit-xml-declaration="yes" />
<xsl:strip-space elements="*" />
<xsl:template match="/">
<xsl:text>; Header


</xsl:text>
<xsl:apply-templates select="//Feature" /></xsl:template>
<xsl:template match="Feature">
<xsl:value-of select="@Title" /><xsl:text>

</xsl:text>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
但这是产生输出:
; Header
A
1
2
B
3
i
ii
4
Run Code Online (Sandbox Code Playgroud)
如何在输出中显示所有级别的层次结构?
问:有没有办法找出一个对象是否有任何"强引用"?
Raymond Chen暗示可能有一种解决方案:
您想知道引用计数是零还是非零.为此,请使用WeakReference.
此代码示例演示了依赖强制执行垃圾收集的问题以及WeakReference的IsAlive属性,以确定对象是否有任何未完成的引用.
WeakReference m_wr = null;
...
for (int i = 0; i < 1000000; i++)
{
Pig p = new Pig();
m_wr = new WeakReference(p);
}
...
GC.Collect();
if (m_wr.IsAlive)
Environment.FailFast("All objects should have been collected by now");
Run Code Online (Sandbox Code Playgroud) 我有以下log4net配置:
<log4net>
<appender name="A1" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="C:\path1.log" />
</appender>
<appender name="A2" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="C:\path2.log" />
</appender>
<logger name="A1Logger">
<level value="ALL" />
<appender-ref ref="A1" />
</logger>
<logger name="A2Logger">
<level value="ALL" />
<appender-ref ref="A2" />
</logger>
</log4net>
Run Code Online (Sandbox Code Playgroud)
然后在代码中我执行以下操作:
var logger1 = LogManager.GetLogger("A1Logger");
var logger2 = LogManager.GetLogger("A2Logger");
Run Code Online (Sandbox Code Playgroud)
但两者都记录到同一个文件C:\path1.log.
我究竟做错了什么?
如何从https重定向到http?
我有下面的代码,但它似乎不起作用.
server {
listen 443;
server_name example.com;
rewrite ^(.*) http://example.com$1 permanent;
}
Run Code Online (Sandbox Code Playgroud) 我一直想组建一个简单的小应用程序,让我创建简单的电子表格; 只需将数据输入网格,如果可能的话,可以在其中使用一些基本的字体/单元格/边框格式.
换句话说,我想把电子表格等同于记事本.
环顾四周,我似乎无法找到有关VC++或VB的通用"电子表格"控件的任何信息.我见过一些第三方控件,但我真的不想花500美元以上的东西只是为了我的简单使用.
有没有人有任何建议或链接到我可以获得有关如何创建"Excel-lite"的信息的地方?
所以我有一个AIR应用程序的基本应用程序描述符文件.它看起来像这样,缩短了理智:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<application xmlns="http://ns.adobe.com/air/application/2.0">
<version>1.0.10</version>
</application>
Run Code Online (Sandbox Code Playgroud)
现在我想在应用程序中显示版本,但我不想在多个地方维护版本,那么如何从应用程序中读取该版本号?
我正在用python,pygame和py2app编写一个简单的游戏.(我使用python 2.6)当我在别名模式下构建我的游戏时,它工作正常,但是当我构建部署时,应用程序我会在午餐后立即崩溃.有谁知道发生了什么?
我有一个整数ascii值列表,我需要将其转换为字符串(二进制)以用作加密操作的键.(我在python中重新实现java加密代码)
这有效(假设一个8字节的密钥):
key = struct.pack('BBBBBBBB', 17, 24, 121, 1, 12, 222, 34, 76)
Run Code Online (Sandbox Code Playgroud)
但是,我宁愿没有密钥长度和硬盘编码的unpack()参数列表.
在给定初始的整数列表的情况下,如何正确实现?
谢谢!
有谁知道什么preg的preg_match,preg_grep等代表什么?
我知道他们使用的是PCRE,它们是'Perl Compatible Regular Expressions'.