小编Hal*_*Hal的帖子

检测c#中的特殊符号

我正在研究ac #project,其中一些数据包含编码无法识别的字符.它们显示如下:

"有些文字 里面有特殊的 符号".

我无法控制编码过程,数据也来自各种来源和各种格式的文件.我希望能够标记包含错误或不完整字符的数据.现在我能够以这种方式检测它们:

if(myString.Contains("?"))
{
   //Do stuff
}
Run Code Online (Sandbox Code Playgroud)

虽然它确实有效,但在Contains函数中直接使用奇怪的符号并不合适.有没有更清洁的方法来做到这一点?

编辑:

在与负责阅读文件的团队核对后,他们就是这样做的:

var sr = new StreamReader(filePath, true);
var content = sr.ReadToEnd();
Run Code Online (Sandbox Code Playgroud)

传递true作为StreamReader的第二个参数应该从文件的BOM中检测编码,并使用它来读取内容.它并不总是有效,因为有些文件不承载这些信息,因此他们的数据读取错误的原因.

我们已经进行了一些测试,并且使用它StreamReader(filePath, Encoding.Default)似乎适用于大多数(如果不是所有)我们遇到问题的文件.预计,之前工作的文件不再有效,因为它们不使用默认编码.

因此,对我们来说最好的解决方案是执行以下操作:读取尝试检测其编码的文件,然后如果不成功则使用默认编码再次读取它.

但问题仍然存在:在尝试检测文件的编码后,如果数据读取不正确,我们如何检查?

c# encoding character-encoding

7
推荐指数
1
解决办法
1542
查看次数

类关联和列表

我有一点C#问题.我有两个类ClassA和ClassB以这种方式定义:

public class ClassA
{
    private ClassB b;
    ClassB B;
    {
        get { return b; }
        set { b = value; }
    }
}

public class ClassB
{
    /* some stuff */
}
Run Code Online (Sandbox Code Playgroud)

如您所见,ClassA有一个ClassB实例.

问题是,从ClassA实例列表中,我想访问相应ClassB实例的列表.我想它看起来像这样:

IList<ClassA> listA = ...;
IList<ClassB> listB = listA.???.B;
Run Code Online (Sandbox Code Playgroud)

解决方案可能很明显,但我自己无法弄明白.

任何帮助,将不胜感激 !

c#

5
推荐指数
1
解决办法
295
查看次数

PL/SQL - 字符串连接算法

我正在研究使用Oracle的PL/SQL算法.

我目前有一个程序,只有一个数字参数.我的程序必须创建一个包含与参数值一样多的'0'的字符串.

我目前正在使用for循环来实现此目的:

MY_STRING VARCHAR2(30);
FOR I IN 1..MY_PARAMETER 
LOOP
     MY_STRING := CONCAT(MY_STRING, '0');
END LOOP;
Run Code Online (Sandbox Code Playgroud)

是否有可能以线性方式进行?我的意思是没有循环,甚至没有一个单一的声明.

任何帮助,将不胜感激 !

谢谢.

oracle plsql

2
推荐指数
1
解决办法
2032
查看次数

SQL - 比解码更简单的功能

我正在使用pl/sql过程.我有一个初始化变量myvar,我想检查它的值:如果它不包含'Z',我希望它包含'P'.

我目前正在这样做:

myvar := decode(myvar,'Z','Z','P');
Run Code Online (Sandbox Code Playgroud)

我只是想知道是否有更简单的方法来做到这一点.我的意思是,解码已经很简单了,但我觉得在变量已经存在的时候指定变量的内容是很奇怪的!

如果存在这样的函数,它将如下所示:

Function myfunction(a In Varchar2, b In Varchar2, c In Varchar2) 
Return Varchar2 
Is               
Begin
      if a <> b
      then
           return c;
      end if;
      return a;
End myfunction; 
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激 !

oracle plsql decode

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

JRXML - 在表格中显示一个复选框

我无法在jrxml中的表格中显示复选框.

以下是我的代码示例:

<detail>
    <band height="45" splitType="Stretch">
        <textField isBlankWhenNull="true">
            <reportElement style="MyCustomStyle" stretchType="RelativeToTallestObject" x="650" y="0" width="80" height="35"/>
            <textElement textAlignment="Center"/>
            <textFieldExpression class="java.lang.Boolean"><![CDATA[$F{myBooleanVariable}]]>
            </textFieldExpression>
        </textField>
    </band>
</detail>
Run Code Online (Sandbox Code Playgroud)

该列只显示truefalse.我认为class="java.lang.Boolean"textFieldExpression元素中指定会将值转换为复选框,但显然,我需要更多.

我知道我做错了什么?

checkbox jasper-reports xmltable

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

AngularJs - 从指令调用控制器函数

在angularjs项目中,我使用指令通过拖放它们来上传文件.在指令中,我需要调用在我的控制器中定义的函数.

这是我在做的事情:

(function () {
'use strict';

angular
    .module('app')
    .controller('myController', myController)
    .directive('fileDropzone', function () {
        return {
            restrict: 'A',
            scope: {
                file: '=',
                fileName: '=',
                test: '&callbackFn',
            },
            link: function (scope, element, attrs) {
                var  processDragOverOrEnter;
                processDragOverOrEnter = function (event) {
                    if (event != null) {
                        event.preventDefault();
                    }
                    event.dataTransfer.effectAllowed = 'copy';
                    return false;
                };
                element.bind('dragover', processDragOverOrEnter);
                element.bind('dragenter', processDragOverOrEnter);
                return element.bind('drop', function (event) {
                    var file, reader;
                    if (event != null) {
                        event.preventDefault();
                    }
                    reader = new FileReader();
                    reader.onload = function …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-directive

2
推荐指数
1
解决办法
6658
查看次数

NHibernate映射属性+脏检查

我有问题NHibernate更新我的一些实体时,这不应该发生(脏检查).当我使用NHibernate.Mapping.Attributes来映射我的类时,我发现有一个参数"Check"到NHMA的元素"Class".我想知道我是否可以通过将此参数设置为false或其他东西来关闭脏检查(此参数所需的类型是字符串,因此可能不是这样).

任何帮助,将不胜感激 !

c# nhibernate nhibernate-mapping .net-3.5

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