给定一组具有关联元数据的文件,存储此元数据的推荐方法是什么?
某些文件格式支持在内部存储元数据(EXIF,ID3等),但并非所有文件格式都支持此功能,那么更常见的选项是什么?
一些元数据几乎肯定是唯一的(标题/描述/等),而一些元数据会在不同程度上重复(类别/标签/等).
如果需要不同类型的属性,则对元数据进行分组也可能是有用的.
理想情况下,解决方案应涵盖概念,而不是特定的语言实现.
我正在开发一个用ColdFusion编码的网站.我有一个CSS/HTML模板我想应用于每个页面的内容,而不需要复制任何超过必要的代码.我已经被ASP.NET的母版所破坏了,这将是我实现这个网站的首选方式.不幸的是,我无法使用该选项.这个网站必须在Coldfusion MX 7上运行.此外,领导该项目的开发人员不喜欢Fusebox,因此该选项已经完成.
每个页面上的主导航,图形页眉和页脚都是相同的.标题标签,元标记和二级导航可能因页面而异.除此之外,只有页面的"主要内容区域"会有所不同.
鉴于这些参数,我如何编码网站以获得最大的可维护性?
输入字符串是这样的:
LineA:50
LineB:120
LineA:12
LineB:53
我想与的结果来代替LineB值MultiplyCalculatorMethod(LineAValue),其中LineAValue高于该线的值LineB和MultiplyCalculatorMethod是我的其他的,复杂的C#方法.
在半码中,我想做这样的事情:
int MultiplyCalculatorMethod(int value)
{
return 2 * Math.Max(3,value);
}
string ReplaceValues(string Input)
{
Matches mat = Regex.Match(LineA:input_value\r\nLineB:output_value)
foreach (Match m in mat)
{
m.output_value = MultiplyCalculatorMethod(m.input_value)
}
return m.OutputText;
}
Example:
string Text = "LineA:5\r\nLineB:2\r\nLineA:2\r\nLineB:7";
string Result = ReplaceValues(Text);
//Result = "LineA:5\r\nLineB:10\r\nLineA:2\r\nLineB:6";
Run Code Online (Sandbox Code Playgroud)
我写了一个Regex.Match匹配LineA: value\r\nLineB: value并将这些值分组.但是当我使用时Regex.Replace,我只能提供一个"静态"结果来组合匹配的组,但我不能在那里使用C#方法.
所以我的问题是如何Regex.Replace其中Result是C#方法的结果,其中输入是LineA值.
我编程了很长时间检查StructKeyExists(表单,"更新"),直到我将输入从type ="submit"更改为type ="image".当type ="image"时,IE不会发回控件的名称,而是发送Update.X和Update.Y.
<form method="post">
Old Way:<br />
<input type="submit" value="3" name="Update" /><br />
<input type="submit" value="4" name="Delete" />
<p>New Way:</p>
<input type="image" value="1" name="Update" src="http://www.google.com/intl/en_ALL/images/logo.gif" /><br />
<input type="image" value="2" name="Delete" src="http://images.google.com/intl/en_ALL/images/logos/images_logo_lg.gif" />
</form>
Run Code Online (Sandbox Code Playgroud)
我的第一个想法是我应该在我的逻辑中添加两个字符
from: <cfif StructKeyExists(form,"Update")
to: <cfif StructKeyExists(form,"Update.X")
Run Code Online (Sandbox Code Playgroud)
但我想要一个处理type ="submit"和type ="image"的解决方案.现在我的逻辑是:
<cfif StructKeyExists(form,"Update") OR StructKeyExists(form,"Update.X")>
<!--- UPDATE table --->
<cfelseif StructKeyExists(form,"Delete") OR StructKeyExists(form,"Delete.Y")>
<!--- DELETE FROM Table --->
</cfif>
Run Code Online (Sandbox Code Playgroud)
问:有没有更优雅的方法来检查按下了哪个按钮?假设表单上有多个按钮,因为如果我只需要检查表单是否已提交,我会检查是否存在form.fieldnames.
我有这个字符串包含一大块html,我试图从字符串的href ="..."部分提取链接.href可以采用以下形式之一:
<a href="..." />
<a class="..." href="..." />
Run Code Online (Sandbox Code Playgroud)
我没有真正的正则表达式的问题,但出于某种原因我使用以下代码:
String innerHTML = getHTML();
Pattern p = Pattern.compile("href=\"(.*)\"", Pattern.DOTALL);
Matcher m = p.matcher(innerHTML);
if (m.find()) {
// Get all groups for this match
for (int i=0; i<=m.groupCount(); i++) {
String groupStr = m.group(i);
System.out.println(groupStr);
}
}
Run Code Online (Sandbox Code Playgroud)
有人能告诉我我的代码有什么问题吗?我在PHP中做了这些东西,但在Java中,我在某种程度上做错了什么...发生的事情是,每当我尝试打印它时,它会打印整个html字符串...
编辑:这样每个人都知道我正在处理什么样的字符串:
<a class="Wrap" href="item.php?id=43241"><input type="button">
<span class="chevron"></span>
</a>
<div class="menu"></div>
Run Code Online (Sandbox Code Playgroud)
每次我运行代码时,它会打印整个字符串......这就是问题所在......
关于使用jTidy ......我正在使用它,但知道在这种情况下出了什么问题会很有趣......
我曾尝试使用ColdFusion 9在我的网站上构建搜索引擎.关键是Verity,我读到它是在我的数据库内容中进行索引和搜索的最佳工具.
但我搜索任何教程没有运气告诉我如何做到这一点,即使教程缺失,或者我认为我没有找到它.
我正在使用ColdFusion 9和MySQL服务器.你能建议我怎么做吗?或者欢迎任何教程,文章或电子书.
我是一名没有冷融经验的.NET开发人员,但我需要编写cf代码来访问我设置的wcf服务.我使用WsHttpBinding在IIS 7中托管了一些WCF服务,并且我可以通过向.NET客户端添加服务引用和使用客户端类来使用这些服务.
对.NET开发人员来说非常简单:
var addressClient = new Service.AddressClient();
addressClient.AddressDTO[] addresses = addressClient.GetAddresses();
Run Code Online (Sandbox Code Playgroud)
很明显,visual studio在幕后做了很多工作来从WSDL设置这些客户端类.
我已经看到使用cfinvoke调用Web服务的coldfusion示例,但没有一个他们实际上从WSDL设置客户端类并从Web服务响应创建它们.
那么,如何通过coldfusion完成这样的事情?
提前致谢!
我想我刚刚意识到我的网络主机在他们不让我使用cfdump时有多么严格.这实际上有点让我感到愤怒,因为真的,倾销会有什么危害呢?无论如何,我的问题是,是否有人写过cfdump替代方案,它会触发复杂类型的数据,或者可以将我链接到带有代码示例的网站?无法真正使用cfc或udfs导致猜测是什么,它们也被阻止了.无论如何寻找简单的东西,我可以粘贴在我的cfml中,我会很高兴.很遗憾我以前能够做到这一点,但是因为我搬进了Flex和AS,所以忘记了很多技能.
哦,他们正在使用cf7,所以没有cf8或9技巧;-)
提前致谢.
我需要通过cfhttp模拟真实的http请求.我正在使用ColdFusion获取rss,但今晚他们开始阻止我的请求并发送索引页面而不是rss fead.
我为cfhttp添加了useragent,但它没有帮助.
Opera,Firefox和Chrome可以在同一台计算机上正确打开Feed.
为什么以下工作在CF10而不是CF9?
<cfset out="">
<cfif isQuery( arguments.values ) >
<cfloop query="#arguments.values#" >
<cfset out = '#out#<option value="#value#">#label#</option>'>
</cfloop>
</cfif>
Run Code Online (Sandbox Code Playgroud)
CF9声明"复杂对象类型无法转换为简单值".对于包含cfloop的行.我正在使用Coldbox框架,它的调试器信息显示arguments.values是一个带有Label&Value列的查询.
coldfusion ×7
html ×2
regex ×2
c# ×1
cfdump ×1
cfhttp ×1
cfsearch ×1
code-reuse ×1
coldfusion-9 ×1
file ×1
html-parsing ×1
httprequest ×1
java ×1
master-pages ×1
metadata ×1
search ×1
solr ×1
verity ×1
wcf ×1
web-services ×1
wsdl ×1