我正在做一个个人项目,我最后能够说:"我在这个项目上花费了X个小时".现在解决这个问题的一种方法是使用手动时间跟踪器(工作于:到:).我遇到了这个问题,因为我只能在第一周或第二周使用它.所以我想自动跟踪开发时间.
我的一个想法是在构建过程中插入一个短脚本,每次调用构建过程时都会将时间戳插入日志文件中.之后,我可以分析每个构建之间的间隔,并希望能够准确地计算出正在发生的事情.
有没有其他人知道如何实施这样的时间跟踪工具?
根据已提供的答案快速跟进:
很难看出StringTemplate如何轻松(或不)与流行的 Java Web MVC框架集成.
哪些Java MVC框架可以与StringTemplate轻松集成?
一个很好的答案:
读者/选民,如果你知道这是真的和伟大的,请投票寻找解决方案.
在这个问题的范围内,我对除StringTemplate之外的任何其他模板引擎都不感兴趣.
我在Perl中有一个应用程序,它读取基于HTML的标记并将其转换为文本输出.我遇到的一件事是需要轻松地将HTML表格转换为固定的字体输出.
<table border="1">
<tr><td>Hello</td>
<td>World</td>
<tr>
<td>foo</td>
<td>bar</td>
</tr></table>
Run Code Online (Sandbox Code Playgroud)
我正在寻找能够采用上表并创建如下内容的东西.
------------------------------
| Hello | World |
------------------------------
| foo | bar |
------------------------------
Run Code Online (Sandbox Code Playgroud)
我知道如何在Perl中处理这个并编写过程,但我希望有一些库已经为我做了这个.
在c#中,如果要分割下面方法的结果,强制它返回double值而不是默认整数的最佳方法是什么.
(int)Math.Ceiling((double)(System.DateTime.DaysInMonth(2009, 1) / 7));
Run Code Online (Sandbox Code Playgroud)
如你所见,我需要除法返回一个双,所以我可以使用天花板功能.
我的dotnetnuke网站遇到了这个问题,其中.DOTNETNUKE cookie被创建了两次,
一个用于www.website.com,另一个用于website.com.
当用户使用website.com的URL登录并尝试访问www.website.com的页面时,会导致他们使用www.website.com的新cookie重新登录.这导致两个cookie,一个用于www.website.com,另一个用于website.com.
我如何解决这个问题,有没有人有任何想法从哪里开始?
谢谢!约翰
我正在尝试创建一个通用函数,从std :: vector中删除重复项.由于我不想为每个矢量类型创建一个函数,我想让它成为一个可以接受任何类型矢量的模板函数.这是我有的:
//foo.h
Class Foo {
template<typename T>
static void RemoveVectorDuplicates(std::vector<T>& vectorToUpdate);
};
//foo.cpp
template<typename T>
void Foo::RemoveVectorDuplicates(std::vector<T>& vectorToUpdate) {
for(typename T::iterator sourceIter = vectorToUpdate.begin(); (sourceIter != vectorToUpdate.end() - 1); sourceIter++) {
for(typename T::iterator compareIter = (vectorToUpdate.begin() + 1); compareIter != vectorToUpdate.end(); compareIter++) {
if(sourceIter == compareIter) {
vectorToUpdate.erase(compareIter);
}
}
}
}
//SomeOtherClass.cpp
#include "foo.h"
...
void SomeOtherClass::SomeFunction(void) {
std::vector<int> myVector;
//fill vector with values
Foo::RemoveVectorDuplicates(myVector);
}
Run Code Online (Sandbox Code Playgroud)
我一直收到链接器错误,但它编译得很好.关于我做错了什么的任何想法?
更新:基于Iraimbilanja给出的答案,我去重写了代码.但是,万一有人想要使用代码来执行RemoveDuplicates函数,这里是:
//foo.h
Class Foo {
template<typename T>
static void RemoveVectorDuplicates(T& …Run Code Online (Sandbox Code Playgroud) 我想在php网站上使用bbcode过滤器.(我正在使用cakephp,它将是一个bbcode助手)我有一些要求.
Bbcodes可以嵌套.所以这样的事情是有效的.
[block]
[block]
[/block]
[block]
[block]
[/block]
[/block]
[/block]
Run Code Online (Sandbox Code Playgroud)
Bbcodes可以有0个或更多参数.
例:
[video: url="url", width="500", height="500"]Title[/video]
Run Code Online (Sandbox Code Playgroud)
Bbcodes可能有多种行为.
让我们说,[url]text[/url]将被转换为[url:url="text"]text[/url]
或视频bbcode将能够在youtube,dailymotion ....
我认为它涵盖了我的大部分需求.我总是用正则表达式做点什么.但我最大的问题是匹配参数.事实上,我得到嵌套的bbcode工作和bbcode 0参数.但是,当我为参数添加正则表达式匹配时,它与嵌套的bbcode无法正确匹配.
"\[($tag)(=.*)\"\](.*)\[\/\1\]" //它不是.*但是非gready matcher
我现在没有完整的正则表达式,但我有一些看起来像那样的东西(上图).
那么有没有办法有效地匹配bbcode与正则表达式或其他东西.我唯一能想到的是使用访问者模式并以这种方式将我的文本与每个可能的标签分开,我可以对文本解析有更多的控制权,我可以验证我的文档,所以如果输入文本没有没有有效的bbcode.在保存任何内容之前,我可以通过错误通知用户.
我会使用sablecc来创建我的文本解析器. http://sablecc.org/
有什么好主意吗?或任何可能导致高效灵活的bbcode解析器的东西?
谢谢,抱歉我的英文不好......
我在拇指驱动器上使用MediaWiki实例来跟踪大量内容.在过去,我一直很匆忙,所以我没有机会寻找一个很好的制作表的方法,所以这个语法很好地满足了我的目的:
{| border=1
...
|}
Run Code Online (Sandbox Code Playgroud)
现在我想要一些更好的东西; 我习惯使用CSS来制作更好的表格边框,但我找不到通过MediaWiki做这种语法的简洁方法.基本上,我想要一个看起来与这个HTML相同的表:
<table style="border-collapse: collapse">
<tr>
<td style="border: 1px solid black">one</td>
<td style="border: 1px solid black">two</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
在每个单元格上设置边框将很困难.我最初的猜测是我需要在某个地方为CSS文件添加一个表类; 如果是的话,可以在哪里找到合适的文件?
对于C#(3.0)控制台应用程序来说,这是一个非常奇怪的安全问题.
应用程序创建一个文件夹并将一堆文件复制到该文件夹中,然后它还会生成一些文件并将它们保存到同一文件夹中.文件流始终关闭.复制的文件使用File.Copy完成.一旦文件在那里,我似乎无法再次访问它们 - 稍后在代码中,如果我想删除或打开现有文件我得到访问被拒绝错误但我刚刚创建或复制了那里的文件我知道我有权利!
Visual Studio 2008,Windows 7(测试版) - 尝试以管理员身份运行,但它没有帮助.我还给了父文件夹权限,以便"Everyone"具有写入权限,并且在我登录的用户文档文件夹下.
谢谢!
更新:我在XP上试过这个并且得到了相同的结果,所以它不是Win 7 :)
您能否推荐我应该阅读/学习什么才能在C中制作组织良好的代码?
我想要学习的一件事是在.h和.c文件中拆分项目的原则,在哪里和为什么,变量命名,何时使用全局变量...
我对处理这个特定问题的书籍和文章很感兴趣.