在我的工作中,我经常处理POS(销售点)终端.它们基本上与用Java编写的系统端点进行通信,该端点将与后端系统进行通信.
对于收据,我们将在端点中编写代码,以生成需要打印的数据.这些收据每行只能占用40个字符,因此我们基本上会对每个需要打印的收据类型进行硬编码.
我想要做的是基本上提出一种脚本语法,我可以使用它来生成这些收据.
我的想法是有一个GUI程序,您可以在其中设计收据,如
Welcome To John Doe Services
Your current balance is $(F4).Format(currency)
Run Code Online (Sandbox Code Playgroud)
或类似的东西.有了这个,我可以解释语法$(F4).Format(货币),并实际拉取数据并正确格式化.
我会喜欢一些建议,我应该开始研究如何做到这一点.我想用Java写这个,但我不知道从哪里开始.我宁愿尝试远离一些子串魔法.
提前致谢.
编辑:对不起,我应该提到,我们扩展的软件是用J ++编写的,所以我不能使用Java 5或6,我可以使用的最新Java是1.4
我在iphone应用程序中有一个文本字段,我想实现类似于atms输入的输入,你只需要输入数字(不需要输入十进制字符).我希望能够在此文本字段中使用数字键盘.例如,文本字段最初显示:
0.00
Run Code Online (Sandbox Code Playgroud)
如果用户输入序列1234,则文本字段将如下所示:
12.34
Run Code Online (Sandbox Code Playgroud)
如果用户按下删除按钮,它也必须更新.
我从Web服务获取XML.这是XML的样子:
<parent>
<child>
Text
</child>
</parent>
<parent>
<child>
<grandchild>
Text
</grandchild>
<grandchild>
Text
</grandchild>
</child>
<child>
Text
</child>
</parent>
etc.
Run Code Online (Sandbox Code Playgroud)
这是我的C#代码:
StringBuilder output = new StringBuilder();
// Create an XmlReader
using (XmlReader reader = XmlReader.Create(new StringReader(xoResponse.@return)))
{
XmlWriterSettings ws = new XmlWriterSettings();
//ws.Indent = true;
using (XmlWriter writer = XmlWriter.Create(output, ws))
{
// Parse the file and display each of the nodes.
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
writer.WriteStartElement(reader.Name);
break;
case XmlNodeType.Text:
writer.WriteString(reader.Value);
break;
case XmlNodeType.XmlDeclaration:
case XmlNodeType.ProcessingInstruction: …Run Code Online (Sandbox Code Playgroud) 我试图在Mac OSX上使用cmake我既安装了二进制版本,又安装了源代码.但是,在尝试创建Makefile时,我仍然会收到以下错误.
cpc1-dumb4-2-0-cust166:build bcrowhurst $ cmake.CMake错误:错误要求内部CMake变量未设置,cmake可能无法正确构建.
缺少的变量是:
CMAKE_On_COMPILER_ENV_VAR
CMake错误:错误要求内部CMake变量未设置,cmake可能无法正确构建.
缺少的变量是:
CMAKE_On_COMPILER
CMake Error: Could not find cmake module file:/Users/bcrowhurst/NetBeansProjects/appon/build/CMakeFiles/CMakeOnCompiler.cmake
CMake Error: Could not find cmake module file:CMakeOnInformation.cmake
CMake Error: CMAKE_On_COMPILER not set, after EnableLanguage
-- Boost version: 1.43.0
-- Found the following Boost libraries:
-- system
-- Configuring incomplete, errors occurred!
Run Code Online (Sandbox Code Playgroud)
我的CMakeLists.txt如下:
cmake_minimum_required( VERSION 2.6 )
project( Application On )
find_package( Boost COMPONENTS system REQUIRED )
link_directories( ${Boost_LIBRARY_DIRS} )
if(Boost_FOUND)
include_directories( ${Boost_INCLUDE_DIRS} )
add_library( object ../source/object.cpp ../source/object.h )
target_link_libraries( object …Run Code Online (Sandbox Code Playgroud) 我正在使用Nimbus的外观和感觉.根据此链接,您应该能够使用JTree实现3种不同的线型:

使用以下代码时:
theTree.putClientProperty("JTree.lineStyle", "Horizontal");
我的JTree看起来像这样:

它具有"无"风格而不是"水平"风格.知道为什么会这样吗?它与Nmbus有关吗?设置该属性后,是否需要调用特殊的东西?
谢谢
为什么我看不到在我的DbContext中添加的存储过程?DbContext由CTP5版本(带有POCO类)引入的模板生成.
我添加了本教程所述的存储过程:http: //thedatafarm.com/blog/data-access/checking-out-one-of-the-new-stored-procedure-features-in-ef4/
此外,我搜索了条目是否在我的上下文中添加,这些是结果:
<Function Name="GetClientsForEmailSend" Aggregate="false" BuiltIn="false" NiladicFunction="false" IsComposable="false" ParameterTypeSemantics="AllowImplicitConversion" Schema="dbo" />
<FunctionImport Name="GetClientsForEmailSend" EntitySet="Client" ReturnType="Collection(DBMailMarketingModel.Client)" />
<FunctionImportMapping FunctionImportName="GetClientsForEmailSend" FunctionName="DBMailMarketingModel.Store.GetClientsForEmailSend">
Run Code Online (Sandbox Code Playgroud)
一个类似的问题是:
但我已经完成了所有的建议.
这是存储过程:
ALTER PROCEDURE GetClientsForEmailSend
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT OFF;
-- Insert statements for procedure here
SELECT *
FROM dbo.Client AS c
INNER JOIN Subscription AS i on c.IDClient = i.IDClient
WHERE c.Email is not null and c.Email <> …Run Code Online (Sandbox Code Playgroud) stored-procedures entity-framework entity-framework-ctp5 asp.net-mvc-3
下面的方法失败,出现"PatternSyntaxException:Unclosed count closure near index ..."
@RequestMapping(value ="/{id:[0-9|a-z]{15}}")
public View view(@PathVariable final String id) {
...
}
Run Code Online (Sandbox Code Playgroud)
看起来模式匹配器正在修剪过多的字符串而丢失了最后一个}.
有没有人知道这个bug的工作?我不得不将限定符放到"/ {id:[0-9 | az] +}" - 这很坦率!
我遇到与此处相同的问题:如何在Webbrowser控件中禁用"安全警报"窗口
我喜欢这个答案,但是我要去哪里ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate);?
在我使用以下代码提交学校网络的登录页面后,我收到"无效认证"消息:
HtmlElementCollection ellements = webBrowser.Document.GetElementsByTagName("input");
foreach (HtmlElement ellement in ellements)
{
if (ellement.OuterHtml == "<INPUT onclick=\"this.value = 'Submitted'\" value=\" Login \" type=submit>")
{
ellement.InvokeMember("click");
this.DialogResult = DialogResult.OK;
break;
}
}
Run Code Online (Sandbox Code Playgroud) 我在login.jsp上使用j_security_check.服务器是GlassFish Server 3.一切正常,当用户通过身份验证后,它会打开index.jsp.我的问题是我需要在index.jsp中获取j_username,但我找不到这样做的方法.我找到的所有解决方案都是Java,我需要一些适合我的jsp的东西.
有任何想法吗?非常感谢你提前!
我在SUSE Linux上运行我的代码.我有一个指针,我在一个函数中使= NULL.但是当我尝试在while循环中将同一指针与NULL进行比较时,问题就出现了.这导致程序崩溃.我在下面的示例代码中重现了我的问题.有人可以告诉我这里发生了什么吗?
我的代码如下:
#include <stdio.h>
int func(char *,int);
int main()
{
char buffer[20];
int i =20;
int temp = func(buffer,i);
if ( (temp == 0) && (buffer != NULL) )
{
printf("inside loop \n");
}
}
int func(char *ad,int a)
{
ad = NULL;
printf("Integer is %d \n", a);
return(0);
}
Run Code Online (Sandbox Code Playgroud)
问题是比较buffer != NULL失败并且控制进入循环内部,这不应该理想地发生.我通过这样做解决了这个问题:
ad[0] = NULL并且比较改为buffer[0] != NULL.
由于NULL仅在指针上下文中使用,因此这是错误的代码.我可以在我的解决方法中使用'\ 0而不是NULL,并且不会写'坏代码',但我真的想知道这里发生了什么.有人可以澄清一下吗?
非常感谢,Aditya