小编Ωme*_*ega的帖子

让lex读取UTF-8不起作用

我写了一个解析ASCII文件的xml解析器,但我现在需要能够读取UTF-8编码的文件.我在lex中有以下正则表达式但它们与UTF-8不匹配.我不确定我做错了什么:

utf_8       [\x00-\xff]*
bom         [\xEF\xBB\xBF]
Run Code Online (Sandbox Code Playgroud)

然后:

bom             { fprintf( stderr, "OMG I SAW A BOM"); return BOM;}
utf_8           { fprintf( stderr, "OMG I SAW A UTF CHAR", yytext[0] ); return UTF_8;}
Run Code Online (Sandbox Code Playgroud)

我还有以下语法规则:

program 
: UTF8 '<' '?'ID attribute_list '?''>' 
root ...
Run Code Online (Sandbox Code Playgroud)

在哪里UTF8:

UTF8

: BOM           {printf("i saw a bom\n");}
| UTF_8         {printf("i saw a utf\n");}
|               {printf("i didn't see anything.'\n");} 
;
Run Code Online (Sandbox Code Playgroud)

它总是出现i didn't see anything,我的解析器适用于ASCII文件,也就是当我将XML UTF-8文件粘贴到空文档中时.

任何帮助,将不胜感激.

编辑:

这是一个修剪过的.l文件供参考:

%{
#include <stdio.h>
#include <stdlib.h> …
Run Code Online (Sandbox Code Playgroud)

c xml parsing lex utf-8

3
推荐指数
1
解决办法
1559
查看次数

使用ExeCOMServer时,无法将类型为"..."的COM对象转换为接口类型"..."

我正在使用这个exe com服务器:

https://cfx.svn.codeplex.com/svn/Visual%20Studio%202008/CSExeCOMServer/ExeCOMServer.cs

  • 我的编程是一个com应用程序
  • 我的com方法采用另一个com对象是 void Init(AppsScriptRunningContext rc);
  • 在这个方法中,我尝试读出一个属性并得到此错误

无法将"AppsScriptLib.AppsScriptRunningContextClass"类型的COM对象强制转换为接口类型"AppsScriptLib.IAppsScriptRunningContext".此操作失败,因为对IID为"{4D2E5723-87C2-49C1-AA28-ED2D88275100}"的接口的COM组件的QueryInterface调用由于以下错误而失败:不支持此类接口(HRESULT异常:0x80004002(E_NOINTERFACE))

如果我的应用程序不是com服务器而是普通的com应用程序,则没有错误.这就是为什么我认为错误是由exe com服务器产生的.

https://cfx.svn.codeplex.com/svn/Visual%20Studio%202008/CSExeCOMServer/ExeCOMServer.cs

问候,克里斯

c# com casting interface

3
推荐指数
1
解决办法
7738
查看次数

具有多个渐变的SVG透明度

我试图找出4向梯度填充的最佳模型.我的最新型号是这个小提琴:

<svg height="360" width="400" xmlns="http://www.w3.org/2000/svg" version="1.1">
  <defs>
    <clipPath id="C">
      <path d="M 100 200 L 300 58 L 400 250 L 300 341 Z" />
    </clipPath>
    <radialGradient id="G1" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
      <stop offset="0%"   style="stop-color:rgb(255,0,0);    stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(128,128,64); stop-opacity:0" />
    </radialGradient>
    <radialGradient id="G2" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
      <stop offset="0%"   style="stop-color:rgb(0,255,0);    stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(128,128,64); stop-opacity:0" />
    </radialGradient>
    <radialGradient id="G3" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
      <stop offset="0%"   style="stop-color:rgb(0,0,255);    stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(128,128,64); stop-opacity:0" /> …
Run Code Online (Sandbox Code Playgroud)

algorithm graphics html5 svg graph-algorithm

3
推荐指数
1
解决办法
2624
查看次数

Perl正则表达式找到一个确切的单词

我想sprintf在我的代码中找到这个词.应该使用什么Perl正则表达式?有一些行有文字sprintf_private,我想排除,但只需要sprintf.

regex perl

3
推荐指数
2
解决办法
8967
查看次数

Android 默认点击声音(音频文件)

我想在我的应用程序中播放默认的 Android 点击声音,即使在非 Android 系统上也是如此。在我的设备 (Samsung Galaxy Tab2 7.0) 上,我可以从哪里获得这个音频文件,或者我可以从哪里下载这个音频文件?

android

3
推荐指数
1
解决办法
6577
查看次数

将条形码转换为数字

什么在线工具可用于将条形码图像转换为数字?有许多工具可以生成条形码(将数字转换为图像),但我需要将图像转换为数字,说明使用了什么类型的条形码以及图像中编码的数字.

barcode

3
推荐指数
1
解决办法
1万
查看次数

使用宏在Excel 2013中设置打印区域

在Excel 2013中,具有名为"Tags"的工作表,我试图设置A2页面到页尾的打印区域,以列结束L.

Worksheets("Tags").PageSetup.PrintArea = Worksheets("Tags").Range( _
  Cells(2, 1), Cells(Worksheets("Tags").Range("A65536").End(xlUp).Row, 12))
Run Code Online (Sandbox Code Playgroud)

我的代码编译好了,但它似乎不起作用 - 没有设置打印区域.

设置打印区域应该是一个正确的宏?

excel vba excel-vba

3
推荐指数
2
解决办法
6万
查看次数

TAR文件格式问题

我不清楚,什么是正确的.tar文件格式,因为我在三个场景中遇到了正确的功能(见下文).

根据.tar我一直在使用的规范,magic字段(ustar)是以空字符结尾的字符串,version字段是八进制数字,没有尾随空值.

但是我查看了.tar我在服务器上找到的几个文件,我发现了不同的字段和字段的实现,magic并且version它们中的三个似乎都正常工作,可能是因为系统忽略了这些字段.

在以下示例>>中查看单词ustarroot之间的不同(3)字节

场景1(20 20 00):

 000000F0      00 00 00 00 | 00 00 00 00 | 00 00 00 00      ............
 000000FC      00 00 00 00 | 00 75 73 74 | 61 72 20 20      .....ustar  
 00000108      00 72 6F 6F | 74 00 00 00 | 00 00 00 00      .root.......
 00000114      00 00 …
Run Code Online (Sandbox Code Playgroud)

compression zip gzip tar bzip2

3
推荐指数
1
解决办法
1153
查看次数

如何在记事本++中删除两个字符或字符串之间的空格

考虑到我有一个引号"( the"中的字符串,它出现在大量文本中。

我想删除非字母数字(和字母数字t字符之间的空格

regex

3
推荐指数
1
解决办法
1万
查看次数

浏览器默认字体的CSS

如果网页设计师完全控制整个代码,那么很容易使用浏览器默认字体 - 只是不要改变任何字体样式而你得到它.

但是如果没有了它一个完整的控制和例如有定义一些字体相关的风格htmlbody元素,或字体相关的CSS样式* { ... },那么有必要重新定义字体样式不继承修改造型.

有没有办法,CSS纯粹JavaScriptjQuery解决方案,允许显式设置特定元素的浏览器默认字体?

html javascript css jquery html5

3
推荐指数
2
解决办法
2946
查看次数

标签 统计

html5 ×2

regex ×2

algorithm ×1

android ×1

barcode ×1

bzip2 ×1

c ×1

c# ×1

casting ×1

com ×1

compression ×1

css ×1

excel ×1

excel-vba ×1

graph-algorithm ×1

graphics ×1

gzip ×1

html ×1

interface ×1

javascript ×1

jquery ×1

lex ×1

parsing ×1

perl ×1

svg ×1

tar ×1

utf-8 ×1

vba ×1

xml ×1

zip ×1