Java 字符串添加双引号
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 字符串添加双引号相关的知识,希望对你有一定的参考价值。
XZSJ=2012-12-03 09:54:02.0 and USER_NAME=张三 and XSZL=100 and ID=1>
添加完毕之后
XZSJ=“2012-12-03 09:54:02.0” and USER_NAME=“张三” and XSZL=“100” and ID=“1”>
急求 提前谢谢大侠了
我现在就是 拼写SQL 现在其他的都拼写好了就是where 条件查出来是这样子的
XZSJ=2012-12-03 09:54:02.0, USER_NAME=张三, XSZL=100, ID=1 然后我分割替换成
XZSJ=2012-12-03 09:54:02.0 and USER_NAME=张三 and XSZL=100 and ID=1
现在需要接着 实现 双引号 不知道怎么下手了 java 实现
过滤条件。where后面的由等号,如果为字符串需双引, 如果为数字或日期需单引 参考技术C 这个是sql的查询条件?
那就拼写sql就好了。
不会是不会拼写sql吧。追问
看上面问题
追答还说别人2b,就这么个简单问题都不会。。。
哎。。。
你把问题看懂了么???2B货 说你还不承认 我这么切割 你给我说 我问的是什么问题???????????傻逼
我震惊了,你最开始的提问只有前面的4行啊。另外估计你还是不知道sql应该怎么拼写。
你这种replace的写法,遇到数据有空的就查不出来了。
你嘴真臭。
2B 货 老子写的功能是两个数据库的数据对比功能。。不查出来空 那对比什么呢???什么都不懂。还在这装B 。。源码给你贴上去你还看不明白老子需要问的是什么。。你还在这 装你2B呢??今年2B特别多
追答你妈个大xie逼的,你活在自己的世界里面是吗?
你能从你给出的程序中看出这是比较2个库的数据?就你能看出来吧。
问个问题都说不明白,还骂骂咧咧的,你妈没教过你怎么说话是吧。
贼你妈去。你妈跟你爷生的你。什么智商 如果老子不是跨数据库 那还有这么拼接 不会用存储过程 或者触发器。你个二B 真么见过你这傻逼样子。。还在这叫唤 。。谁家的狗赶紧拉走。别在这咬了人
追答所以我问你为什么这么拼写,然后你就开始骂人了。
你情况没有说清楚,真是个疯狗。
从 JSON 对象/字符串或 Java 脚本变量中删除开头和结尾的双引号?
【中文标题】从 JSON 对象/字符串或 Java 脚本变量中删除开头和结尾的双引号?【英文标题】:Remove Double Quotes at Begin & End from JSON Object/String or Java script Variable? 【发布时间】:2013-09-01 03:31:54 【问题描述】:我从 servlet 获取对象的 JSON 数组,并尝试在 java 脚本中填充表控件。
这是我的代码,出于某种原因,它在开头和结尾添加了双引号,表格控件不接受用于填充值。如何删除开头和结尾的双引号。
aData = ["A":"one","B":"Two","C":"Three","D":"8","E":"No","F":"Business","G":"0",
"L1H":"Analytics","A":"ones","B":"Twos","C":"Threes","D":"85","E":"Nos",
"F":"BusinessD","G":"0","L1H":"AnalyticsM"]
var oModel = new sap.ui.model.json.JSONModel();
oModel.setData(modelData: aData);
var oTable=sap.ui.getCore().byId("id1");
oTable.setModel(oModel);
oTable.bindRows("/modelData"); // This static code of aData is working fine in
// my Table control of HTMl page.
//Here, i Wanted to get values dynamically from servlet and populate it in Table.
var global;
$.get('someServlet', function(data)
var abc, xyz;
for(var i=0;i<(data.length);i++)
abc=''+'\"A\":'+'\"'+data[i].A+'\"'+','+'\"B":'+'\"'+data[i].B+'\"'+',
'+'\"C\":'+'\"'+data[i].C+'\"'+','+'\"D\":'+'\"'+data[i].D+'\"'+',
'+'\"E\":'+'\"'+data[i].E+'\"'+','+'\"F\":'+'\"'+data[i].F+'\"'+',
'+'\"G\":'+'\"'+data[i].G+'\"'+','+'\"H\":'+'\"'+data[i].H+'\"';
if (xyz===undefined)
xyz=abc;
else
xyz=abc+','+xyz;
global = xyz;
global="["+global+"]";
var oModel = new sap.ui.model.json.JSONModel();
oModel.setData(modelData: global);
var oTable=sap.ui.getCore().byId("id1");
oTable.setModel(oModel);
oTable.bindRows("/modelData");
);
//global="["A":"one","B":"Two","C":"Three"...]"
//alert(global); Displaying without double quotes as expected.
//when I see the value in Chrome debugger double quotes are appearing at begin&End
所以最后我在全局变量中的值是双引号。
//global="["A":"one","B":"Two","C":"Three","D":"8","E":"No","F":"Business","G":"0","L1H":"Analytics",
"A":"ones","B":"Twos","C":"Threes","D":"85","E":"Nos","F":"BusinessD ","G":"0","L1H":"AnalyticsM"]"
如何在这个 resultSet JSONArray 对象的开头和结尾去掉这个双引号?如果我放了警报,它会显示没有双引号。当我在 Chrome 调试器中看到这个全局变量时,它用双引号显示并且无法在表格控件中填充值。我的代码在将值填充到表控件中时遇到了一些困难,这些值来自 JSON 格式/字符串/数组的 Servlet。请帮忙。
感谢任何输入和帮助。
【问题讨论】:
所以看起来你的 ajax 返回了 json,但是你试图去掉除了三个属性之外的所有属性,所以你正在手动构建 json 字符串,并试图将它传递给一个函数?对吗? 哇。我没有意识到那是他在做什么。这很愚蠢。 可以使用stringify将json转成字符串。 【参考方案1】:La forma Correcta de eliminar las comillas es con
var obJason = eval( dataString );
var obj= "["ID":"786-000X-XX8","NAME":"LISANDRO ARCILES"]";
应用程序eval()
obj= eval( obj);
lo tranforma al obejeto deseado de tipo Json
【讨论】:
请用英文发帖【参考方案2】:试试这个:
var myJSON = eval( data );
其中 data 是服务器发送的字符串。 eval 函数完成工作,将字符串解析为 JSON。
【讨论】:
【参考方案3】:您可以在最后调用JSON.parse 将您的字符串解析为一个对象,即:
global=JSON.parse("["+global+"]");
但是,与其在运行中为自己构建一个 JSON 字符串然后对其进行解析,不如设置 var global = [];
并在你的 for 循环中执行以下操作可能更简单:
global.push(
Deals: data[i].Deals,
L1H: data[i].L1H,
L2H: data[i].L2H
);
您是否尝试过以下方法?
$.get('someServlet', function(data)
var oModel = new sap.ui.model.json.JSONModel();
oModel.setData(modelData: data);
var oTable=sap.ui.getCore().byId("id1");
oTable.setModel(oModel);
oTable.bindRows("/modelData");
);
【讨论】:
这就是我在 servlet response.getWriter().print(jsonArray); 的 doGet 方法中所拥有的。当我做警报(数据)时,得到诸如 [object, Object],[object, Object],[object, Object 对,因为 data 是一个对象数组,应该足以填充表格控件(取决于您使用的方式或内容)。如果您想要数据的文本表示,您可以使用alert(JSON.stringify(data));
,但如果我们的答案都没有帮助您,那么我们可能会误解您遇到的问题。
好的。我很抱歉让你感到困惑。让我换一种说法。
我收到这种格式的错误,例如 Uncaught TypeError: Cannot call method 'push' of undefined【参考方案4】:
您的 global
变量是 JSON 字符串。您不需要构造字符串。据我所知,data
已经是一个 JavaScript 对象。我想这就是你想要的:
var global;
$.get('someServlet', function(data)
global = data;
populateTable(global); // You could just as easily pass the data variable here
);
【讨论】:
我可以用静态数据填充表,例如 global=["A":"one","B":"Two","C":"Three","D ":"8","E":"否","F":"商业","G":"0","L1H":"分析", "AB":"one","BC ":"二","CD":"三","DF":"8","EG":"否","FZ":"商业","GM":"0","L1H": "Analytics" ] 当我从数据中获取这个全局变量的值时,它失败了。我怎样才能做到这一点? 在上面的示例中,您应该能够在设置全局变量后立即调用该函数来填充该表。我编辑了我的示例以说明我的意思。 这失败了。当我将全局直接分配给表格控件时,出现错误。当我喜欢这个 global = ["A":"one","B":"Two","C":"Three","D":"8","E":"No"," F":"Business","G":"0","L1H":"Analytics","AB":"one","BC":"Two","CD":"Three"," DF":"8","EG":"No","FZ":"Business","GM":"0","L1H":"Analytics"];填充(全局),它正在工作 请将console.log(data);
放入$.get 回调函数中。它在控制台中显示什么?
[对象,对象],[对象,对象],[对象,对象],[对象,对象],[对象,对象],[对象,对象]....【参考方案5】:
不要自己构建或解析 json。有一些方法可以为您做到这一点。
如果您返回的 json 仅包含具有三个属性 Deals
、L1H
和 L2H
的对象数组,那么 data
就是您想要的。如果返回的 json 有更多属性,而您只想要这三个,请改为:
function(data)
var arr = $.map(data, function(item, idx)
return
Data: item.Data,
L1H: item.L1H,
L2H: item.L2H
;
);
【讨论】:
感谢您的所有回复。实际上,我正在将 JSON 数组格式的数据库结果集传递给 servlet。这是我传递给 servlet 的 JSON 数组。["A":"one","B":"Two","C":"Three","D":"8","E" :"No","F":"Business","G":"0","L1H":"Analytics", "AB":"one","BC":"Two","CD" :"Three","DF":"8","EG":"No","FZ":"Business","GM":"0","L1H":"Analytics" ]。这意味着,从 JDBC 程序返回的行数。 如果我在代码中不自己解析,就会报错。 我以其他方式重申了我的问题。有人能再看看我的担忧吗?【参考方案6】:由于您使用的是 jQuery,请尝试http://api.jquery.com/jQuery.parseJSON/,它会改为返回一个对象。
【讨论】:
以上是关于Java 字符串添加双引号的主要内容,如果未能解决你的问题,请参考以下文章