/*********************************************************************** * System : NLMRPII * Date : 2010-11-21 * Author : Livon * Description : Comment (评论、注释) 的相关通用操作 ************************************************************************/ /*********************************************************************** * Title : 获取评论数据 * Author : Livon * Date : 2010-11-22 一 ************************************************************************/ function getComment( category, id ){ table_showMessage( "comment_tbody", "Loading ... "); // @table.js category = ToUnicode(category); xhrUrl = "comment.action?actionType=select&pageSize=5" + "&category=" + category + "&recordId=" + id ; dojo.xhrPost({ //Ajax请求。 url: xhrUrl , handleAs: "json", load: function(response) { if( response.code == 0){ // alert(1); fillCommentTbody( response ); }else{ table.showMessage("Data_List_Container", response.message ); // alert( "ERROR: " + response.code + " - " + response.message ); alert( response.message ); } }, error: function(error) { alert("[ comment.js / getComment() ] :An unexpected error occurred: " + error); } }); console.info("杨力权"); } /*********************************************************************** * Title : 向评论的表格中填充数据 * Author : Livon * Date : 2010-11-22 一 ************************************************************************/ function fillCommentTbody( response ){ var list = response.commentList ; //数据列表,类型:Json 。 if( list.length > 0 ){ table_dataClear( "comment_tbody" ); for (var i=0; i< list.length; i++) { // 定义 行数据 数组。 var arrRowCells = new Array(); arrRowCells[0] = list[i].commentId; arrRowCells[1] = list[i].content; arrRowCells[2] = list[i].user; arrRowCells[3] = list[i].dateTime; arrRowCells[4] = list[i].clientIP; // 插入行。 table_insertRow( "comment_tbody", arrRowCells); // 位于 js/table.js } }else{ table_showMessage( "comment_tbody", response.message); // 提示查询结果无记录。 } dojo.publish("promptMessageTopic", [{message: "评论数据已更新。",type: "message", duration: 3000}]); } /*********************************************************************** * Title : 添加评论 * Author : Livon * Date : 2010-11-21 ************************************************************************/ function addComment( category, id, content ){ xhrUrl = "comment.action?actionType=insert" + "&category=" +ToUnicode(category) + "&recordId=" + id + "&content=" + ToUnicode(content) ; dojo.xhrPost({ //Ajax请求。 url: xhrUrl , handleAs: "json", load: function(response) { if(response.code == "0") getComment( category, id ) else alert("[ comment.js / addComment() ] " + response.message); }, error: function(error) { alert("内容过多,请拆分。" +error); } }); dojo.publish("promptMessageTopic", [{message: "数据已更新。",type: "message", duration: 3000}]); } /*********************************************************************** * Title : 更多评论 * Author : LIU.YAN * Date : 2010-12-24 * Parameters: category - 评论类别;recordId - 记录ID。 ************************************************************************/ function commentMore(category,recordId){ category=ToUnicode(category); recordId=recordId || 0; window.location.href="comment.action?actionType=more&category="+category+"&recordId="+recordId; } // js 类:Comment 评论、注释。 var Comment={ // 初始化。 // parameters: category - 类别,recordId - 记录ID,container - 容器DIV init: function( category, recordId, container ){ titlePane = new dijit.TitlePane({ id: "CommentTitlePane", title: "评论、注释:", open: false, content: '<div id="titlePaneContent" style="width:100%;"><table class="DataListTable"> <thead> <tr> <th>ID</th> <th>内容</th> <th>评论人</th> <th>时间</th> <th>IP</th> </tr> </thead> <tbody id="comment_tbody"><tr><td colspan="99">数据读取中 ...</td></tr></tbody><tfoot></tfoot> </table><br /> </div> ' }); editor = new dijit.Editor({ id: "commentContent_textarea", name: "commentContent_textarea", height: "100px", style: "border-top: 1px solid #BFBFBF;", plugins: ['bold','underline','insertOrderedList','indent','outdent','|','foreColor','|','fullscreen','viewsource'] }); saveButton = new dijit.form.Button({ label: "save", iconClass: "dijitEditorIcon dijitEditorIconSave" , style: "margin:10px 10px 0px 0px;", onClick: function(){ Comment.add( category, recordId, dijit.byId('commentContent_textarea').getValue() ); } }); moreLink = document.createElement("a"); moreLink.href = "javascript:Comment.more('" + category + "','" + recordId + "');"; moreLink.innerHTML = "more"; dojo.byId( container ).appendChild( document.createElement("br") ); dojo.byId( container ).appendChild( titlePane.domNode ); dojo.byId( container ).appendChild( document.createElement("br") ); dojo.byId( "titlePaneContent" ).appendChild( editor.domNode ); dojo.byId( "titlePaneContent" ).appendChild( saveButton.domNode ); dojo.byId( "titlePaneContent" ).appendChild( moreLink ); Comment.get( category, recordId ); }, // 读取列表 get: function( category, id ){ table_showMessage( "comment_tbody", "Loading ... "); // @table.js category = ToUnicode(category); xhrUrl = "comment.action?actionType=select&pageSize=5" + "&category=" + category + "&recordId=" + id ; dojo.xhrPost({ //Ajax请求。 url: xhrUrl , handleAs: "json", load: function(response) { if(response.code == "0"){ fillCommentTbody( response ); }else{ table_showMessage( "comment_tbody", response.message); alert( response.message ); } }, error: function(error) { alert("[ comment.js / getComment() ] :An unexpected error occurred: " + error); } }); console.info("杨力权"); }, // 添加评论。 add: function( category, id, content ){ xhrUrl = "comment.action?actionType=insert" + "&category=" + ToUnicode(category) + "&recordId=" + id + "&content=" + ToUnicode(content) ; dojo.xhrPost({ //Ajax请求。 url: xhrUrl , handleAs: "json", load: function(response) { if(response.code == "0") getComment( category, id ) else alert("[ comment.js / addComment() ] " + response.message); }, error: function(error) { alert("内容过多,请拆分。" +error); } }); dojo.publish("promptMessageTopic", [{message: "数据已更新。",type: "message", duration: 3000}]); }, // 更多评论。 more: function( category, recordId ){ category=ToUnicode(category); recordId=recordId || 0; window.location.href="comment.action?actionType=more&category="+category+"&recordId="+recordId; }, test: function(name, recordId, container){ alert( container ); } };
Comment.js 是一个纯 JS 实现的静态站点评论系统,它的核心代码只有 400 行左右,却能够用来实现评论会话和最新评论列表的两个功能。比起已有的社会化评论系统,它有如下几个优点: 完善的评论管理系统。基于 issue 的评论,支持 Markdown ,支持 Gravatar。 开箱即用的邮件通知功能。 无需搭建后台。直接用现成的 issue 作为后端,不像 isso 那样还需要自己搭个后
有没有人知道p7s文件的内容? 文件中至少有一个数字签名,我可以很容易地找到它,但我想捕获文件中包含用私钥加密的部分的部分,即数字签名的不可否认部分。 0版本 1 8X(信息类型) %3%1到下一信息的偏移量(文件长度-%4) (变量+4)x509证书(嵌入,集合成员:CA电子邮件) (变化)交叉证书对信息,未知类类型 (变化)未知类类型的证书(如果需要,用尾随的零填充) 最后,我检查集合中的证书
问题内容: 我想将内容中的某些目录压缩为zip文件 例如假设我有这个目录结构 现在我想将其压缩到哪个正在工作 当我解压缩它时,我得到了相同的结构…我想将 内容 压缩 到其中 ,当我解压缩它时,提取文件后,我得到的文件里面没有root文件夹dir1 我尝试使用此代码处理路径,但是它不起作用,我在这里错过了什么吗? 我试过了 或者也许GO中有更简单的方法来实现这一目标? 问题答案: 假设您正在按以下方
逐行读取文本文件的内容,每次一行(比 FileReadLine 执行的更好)。 Loop, Read, InputFile [, OutputFile] 参数 Read 此参数必须为单词 READ. InputFile 需要在循环中读取内容的文本文件的名称, 如果未指定绝对路径则假定在 %A_WorkingDir% 中. 支持 Windows 和 Unix 格式; 即文件的行结束符可以是回车和换行
6.3 文件内容查阅 如果我们要查阅一个文件的内容时,该如何是好呢?这里有相当多有趣的指令可以来分享一下: 最常使用的显示文件内容的指令可以说是 cat 与 more 及 less 了!此外,如果我们要查看一个很大型的文件 (好几百MB时),但是我们只需要后端的几行字而已,那么该如何是好?呵呵!用 tail 呀,此外, tac 这个指令也可以达到这个目的喔!好了,说说各个指令的用途吧! cat 由
前面小节介绍了文件和目录相关的操作,本小节介绍如何使用 file、cat、more、tail 命令在不同场景下去查看文件相关信息和内容。 1. file 查看文件类型 file 命令可以用来查看文件类型,还能查看文件的编码格式,下面列举一些 file 命令的参数: file 命令参数名称 功能与作用描述 -b 表示 --brief,显示查看结果时,不显示文件名 -c 表示 --checking-p
问题内容: 我正在尝试创建一个简单的Java程序,该程序从zip文件中的文件读取和提取内容。压缩文件包含3个文件(txt,pdf,docx)。我需要阅读所有这些文件的内容,并且为此使用了Apache Tika。 有人可以帮我实现此功能。到目前为止,我已经尝试过了,但是没有成功 代码段 问题答案: 如果你想知道如何从每个文件中获取文件内容,ZipEntry那实际上很简单。这是一个示例代码: 一旦拥有
grep用于在文件内搜索,查看是否有任何行与给定的正则表达式匹配。然而,我有这种情况--我想编写一个将与文件名本身(而不是文件内容)匹配的正则表达式。我将从系统的根目录运行它,以找到所有与正则表达式匹配的文件。