我正在尝试从MSDN文章中运行一些稍微修改过的代码,作为学校项目的一部分.目标是使用colormatrix重新着色图片框中的位图.这是我的代码:
float[][] colorMatrixElements = {
new float[] {rScale, 0, 0, 0},
new float[] {0, gScale, 0, 0},
new float[] {0, 0, bScale, 0},
new float[] {0, 0, 0, 1}};
ColorMatrix colorMatrix = new ColorMatrix(colorMatrixElements);
Run Code Online (Sandbox Code Playgroud)
其中rScale,gScale和bScale的浮点值从0.0f到1.原始的MSDN文章在这里:https://msdn.microsoft.com/en-us/library/6tf7sa87%28v=vs.110%29 . ASPX
当它到达最后一行时,"ColorMatrix colorMatrix = new ..."我的代码遇到运行时错误.在调试器中,我将colorMatrixElements作为float [4] [].好像它不是一个4x4阵列.我是否在复制粘贴作业中搞砸了,或者我只是不了解C#如何处理2D数组?
谢谢您的帮助.
我在高中时已经使用Visual Basic多年了,而且我已经在微软提供的IDE中长大.它很精彩,但是通过学校我可以获得的教育和"工作模型"版本不允许我重新分发软件,作为EULA与Microsoft的一部分.
相反,我发现自己在perl工作,为朋友和家人设计程序,并且它运行得相当好,但我还没有牢牢掌握构建用户界面.我知道我可以用perl的tcl/tk设计用户界面,但是手工编写所有这些的概念对我来说有点令人生畏.这让我想到了我的问题.
您对我可以使用的工具有什么建议,这可以让我为我的perl程序构建GUI吗?
提前致谢!
我对如何从Perl文件中获取所有标量和数组的想法遵循以下方针:
open (InFile, "SomeScript.pl");
@InArray = <InFile>;
@OutArray = {};
close (InFile);
$ArrayCount = @InArray;
open (OutFile, ">outfile.txt");
for ($x=0; $x<=$ArrayCount; $x++){
$Testline = @InArray[$x];
if($Testline =~ m/((@|\$)[A-Z]+)/i){
$Outline = "$1\n";
push @OutArray, $Outline;
}
}
print OutFile @OutArray;
close(OutFile);
Run Code Online (Sandbox Code Playgroud)
......而且效果相当好.问题是如果一行上出现多个变量,它只会获取第一个变量.一个例子可能是:
$FirstVar = $SecondVar + $ThirdVar;
Run Code Online (Sandbox Code Playgroud)
该脚本只会抓取$FirstVar
并输出到文件.这可能仍然有效,因为$SecondVar
并且$ThirdVar
必须在前一行有任何意义之前在其他地方初始化.我想规则的例外是一条线,其中多个变量同时被初始化.
真正的Perl代码中的示例是否会破坏此脚本?另外,如何从同一行中获取符合我的正则表达式条件的多个项目?
我正在构建一个perl应用程序,它通过DBD :: Pg模块与PostgreSQL数据库交互,并使用Perl/Tk作为它的GUI.它在我的系统上工作得相当好,但我正在为一个家庭成员设计它以用于他们的业务.他们没有c ++编译器,也不知道CPAN是什么.我们的目标是不要因为必须加载c ++编译器而陷入困境,如果我可以避免它,就会遇到从源代码构建模块的所有麻烦.
我需要将Tk模块与Strawberry Perl一起安装到他们的计算机上(它包括开箱即用的DBD:Pg).我如何将此模块与我的应用程序一起包含在内,以便为最终用户提供便利?在安装过程中简单地将我的整个C:\ strawberry\perl\site\lib\Tk文件夹复制到他们的计算机上做诀窍或perl是否需要更多才能使用Tk并对它感到高兴?
谢谢您的帮助!
我试图从最终用户"隐藏"我的一些Perl程序,以使它们更容易.我正在尽我所能让他们远离命令提示符.程序本身有一个在Perl/Tk中设计的GUI,因此他们不必担心命令提示符.
我可以写出一个快速的批处理文件,其中包含以下内容:
START perl 'C:\[some path here]\myscript.pl'
Run Code Online (Sandbox Code Playgroud)
使用START启动程序,Perl解释器作为我的程序,以及我的Perl脚本的路径/名称作为参数?
我是否必须指定在哪里找到perl
或者Windows只知道因为perl
在计算机的PATH变量中?
我想运行一个机器学习算法作为我的最终研究代码,该代码迄今为止尚未经过验证且未发布用于文本挖掘目的。文本已经获得,但是是从 Common Crawl 获得的 warc 格式中刮取的。我正在为机器学习目的准备数据,所需的分析任务之一是在启动 ML 应用程序之前对语料库进行 IDF(逆文档频率分析)。
据我了解,为了让 IDF 发挥作用,每个文件应该代表一个发言者或一个想法——通常是一小段 ASCII 文本,不比一条推文长多少。挑战在于我已经抓取了大约 1500 万个文件。我在 Windows 7 上使用 Strawberry Perl 读取每个文件并拆分文档中包含的标签,以便来自相关社交媒体的每个评论落入数组的一个元素中(并且在更强类型的语言中将是字符串类型)。
从这里我遇到了性能问题。我让我的脚本运行一整天,但它在 24 小时内只处理了 400,000 个输入文件。从这些输入文件中,它生成了大约 200 万个输出文件,代表每个说话者使用 Perl 的 HTML::Strip 模块处理 html 剥离文本的一个文件。当我查看我的系统时,我发现本地数据驱动器上的磁盘利用率非常高 - 有大量 ASCII 文本写入,远小于 1 KB,每个写入都被塞进本地数据驱动器的 1 KB 扇区中NTFS 格式的硬盘。
是否值得尝试停止运行,在我的家庭系统上设置一个 MySQL 数据库,在数据库中设置一个最大长度可能为 500-1000 个字符的文本字段,然后重新运行 perl 脚本以使其吸收输入html 文件,分割它,HTML 剥离它,然后准备并执行字符串插入与数据库表?
一般来说,从包含大量单独文本文件的文件输出格式切换到包含大量数据库插入的格式在我的硬盘驱动器上会更容易/从长远来看由于某些缓存或更快的写出速度DBMS 中的 RAM/磁盘空间利用魔法?
我兼职在当地的一个学区工作.他们运行一个名为A +学习系统的软件.它使用java运行时环境来完成它的工作.在我们的一台计算机上,它没有运行; 打开命令提示符并键入:
java -jar als.jar
Run Code Online (Sandbox Code Playgroud)
给出以下错误消息.
C:\als30\alsclient>java -jar als.jar > C:\alsdebuginfo.txt
Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/ControllerListener
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at ALS.checkALSRunning(ALS.java:1017)
at ALS.main(ALS.java:192)
Caused by: java.lang.ClassNotFoundException: javax.media.ControllerListener
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source) …
Run Code Online (Sandbox Code Playgroud) perl ×5
windows ×2
arrays ×1
batch-file ×1
c# ×1
cmd ×1
command-line ×1
debugging ×1
environment ×1
file-io ×1
installation ×1
java ×1
module ×1
mysql ×1
optimization ×1
regex ×1
text ×1
variables ×1