易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 :

使用C语言扩展Python(五)

上一篇中我们在python端的做法是每次读取一个数据块,然后将这个数据块传递进C扩展模块中去,但对于目标文件的数据写入是在C扩展模块中完成的,但其实可以更面向对象一点,不是吗?原来outfp是一个文件指针,不如改成一个从Python中传递一个文件对象到C模块里去,这个文件对象有自己的write方法,这样在C扩展模块中你就可以回调文件对象的write方法来完成数据的写入。 首先来看Python端的代码,我们定义了一个file类继承下来的MyFile子类,其中的write方法就是为在C扩展模块中回调而专门准备的。代码#!/usr/bin/env python
import clame
INBUFSIZE = 4096
class MyFile(file):
    def __init__(self, path, mode):
        file.__init__(self, path, mode)
        self.n = 0
    def write(self, s):
        file.write(self, s)
        self.n += 1
ou ......

使用C语言扩展Python(五)

上一篇中我们在python端的做法是每次读取一个数据块,然后将这个数据块传递进C扩展模块中去,但对于目标文件的数据写入是在C扩展模块中完成的,但其实可以更面向对象一点,不是吗?原来outfp是一个文件指针,不如改成一个从Python中传递一个文件对象到C模块里去,这个文件对象有自己的write方法,这样在C扩展模块中你就可以回调文件对象的write方法来完成数据的写入。 首先来看Python端的代码,我们定义了一个file类继承下来的MyFile子类,其中的write方法就是为在C扩展模块中回调而专门准备的。代码#!/usr/bin/env python
import clame
INBUFSIZE = 4096
class MyFile(file):
    def __init__(self, path, mode):
        file.__init__(self, path, mode)
        self.n = 0
    def write(self, s):
        file.write(self, s)
        self.n += 1
ou ......

使用C语言扩展Python(四)

上一篇里的LAME项目已经展示了python如何与C语言交互,但程序仍不够理想,在python这一端仅仅是传递源文件和目标文件的路径,再调用C模块的encode方法来进行编码,但问题在于你无法控制encode函数,比如你想编码的源文件如果不是原始数据,而是wav文件或者其他格式呢?对于这个问题,有两种方法可以选择,一种模仿前面的C模块,在你的Python代码中读取数据,并将数据块逐个传递给encode函数,另一种方法是你传进去一个对象,这个对象带有一个read方法,这样你就可以在C模块里直接调用它的read方法来读取其数据。 听起来好像第二种更加面向对象,但实际上第一种方法反而是更为合适的选择,因为它更为灵活,下面我们就在上一篇的基础上,利用第一种思路对其进行改造。在这种新方法中,我们需要多次调用C模块的函数,类似于将其视为类的方法。可C语言是不支持类的,因此需要将状态信息存储在某个地方。除此以外,我们需要将“类”暴露给外部的Python程序,使其能创建“类“的实例,并调用它的方法。在“类对象“的内部我们则将其写数据的文件信息储存在”对象“的状态中。听上去就是一种面向对象的方法,不是吗?首先,遵循"测试先行"的原� ......

使用C语言扩展Python(四)

上一篇里的LAME项目已经展示了python如何与C语言交互,但程序仍不够理想,在python这一端仅仅是传递源文件和目标文件的路径,再调用C模块的encode方法来进行编码,但问题在于你无法控制encode函数,比如你想编码的源文件如果不是原始数据,而是wav文件或者其他格式呢?对于这个问题,有两种方法可以选择,一种模仿前面的C模块,在你的Python代码中读取数据,并将数据块逐个传递给encode函数,另一种方法是你传进去一个对象,这个对象带有一个read方法,这样你就可以在C模块里直接调用它的read方法来读取其数据。 听起来好像第二种更加面向对象,但实际上第一种方法反而是更为合适的选择,因为它更为灵活,下面我们就在上一篇的基础上,利用第一种思路对其进行改造。在这种新方法中,我们需要多次调用C模块的函数,类似于将其视为类的方法。可C语言是不支持类的,因此需要将状态信息存储在某个地方。除此以外,我们需要将“类”暴露给外部的Python程序,使其能创建“类“的实例,并调用它的方法。在“类对象“的内部我们则将其写数据的文件信息储存在”对象“的状态中。听上去就是一种面向对象的方法,不是吗?首先,遵循"测试先行"的原� ......

ACCESS找不到可安装的ISAM

在写这篇博文的时候,我真的忍不住叫一声,他妈的变态,今天做一个网站时候,由于要用到ACCESS,那就用了,把之前的链接语句COPY+C过来
看看有什么问题。
string connstr = "Provider=Microsoft.Jet.OLEDB.4.0;
Data Source="+System.Web.HttpContext.Current.Server.MapPath("window2003.mdb");
一看,应该没什么问题吧!!!
结果出现了以下症状
“找不到可安装的ISAM”
我急了,一下子百度了很多下,依然没有结果,后来去了一个博客哪里,博主也出现同样的问题
我欢喜若狂,抄
string connstr = "Provider=Microsoft.Jet.OLEDB.4.0;
Data Source="+System.Web.HttpContext.Current.Server.MapPath("window2003.mdb");
但是怎么看都是那一句呀!!!
那是怎么回事呀
原来,Data Source这里的空格作怪,你弄多几个空格,它就识别不了,就出现了上述的症状,有兴趣的朋友可以试试,还害得我重装了OFFICE软件呢!!真他们害人呀!! ......

Sqlite DB

前一阵字做项目(嵌入式linux),由于要保存大量的数据,而且最长要保存30天的时间。本来打算保存到文件中,每次启动应用程序的时候重新解析一遍,可是当数据量很大的时候,就出现效率的问题了。所以最后还是放弃了使用文件的打算,决定使用数据库存取数据。
linux下的数据库也很多,有开源的,也有收费的。对于我们来说,肯定要使用开源的数据库。以前用过Berkely DB,但是需要licience。所以结合效率性能以及大小限制,最终选定了Sqlite DB。我们对它的评价是“sqlite是一个优秀的完全free的开源数据项目”。
下面是一个简单的使用实例:
int main( int argc, char **argv )
{
        sqlite3 *db;
        sqlite3_stmt * stmt;
        const char *zTail;
        //打开数据库
        int r = sqlite3_open("mysqlite.db",&db)
        if(r){
           ......

C#关于sqlserver中读取image类型

今天在网上找了许久关于sqlserver中存储image类型和读取image的方法,可是都是那么一点,故在此罗列一下,希望可以帮助大家。
首先是关于dataGridView的绑定。代码见下
private void button_show_Click(object sender, EventArgs e)
{
string sqlText = "server=localhost;initial catalog=Test; integrated security=true";
string sqlstr="select * from tast";
SqlConnection conn=new SqlConnection (sqlText);
conn.Open();
SqlCommand comm = new SqlCommand(sqlstr, conn);
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = comm;
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
conn.Close();
}
下面是插入图像到数据库,代码如下:
  private void button_connect_Click(object sender, EventArgs e)
{
string sqlText = "server=localhost;initial catalog=Test; integrated security=true";
......

C#关于sqlserver中读取image类型

今天在网上找了许久关于sqlserver中存储image类型和读取image的方法,可是都是那么一点,故在此罗列一下,希望可以帮助大家。
首先是关于dataGridView的绑定。代码见下
private void button_show_Click(object sender, EventArgs e)
{
string sqlText = "server=localhost;initial catalog=Test; integrated security=true";
string sqlstr="select * from tast";
SqlConnection conn=new SqlConnection (sqlText);
conn.Open();
SqlCommand comm = new SqlCommand(sqlstr, conn);
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = comm;
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
conn.Close();
}
下面是插入图像到数据库,代码如下:
  private void button_connect_Click(object sender, EventArgs e)
{
string sqlText = "server=localhost;initial catalog=Test; integrated security=true";
......

在Delphi和VC中创建和调用动态链接库

大家在软件开发时经常会遇到这样的情况,在不同的开发环境中为实现一些功能相同的过程,由于开发所使用的设计语言不同,因而不得不编写许多类似的代码,甚至有时要在同一个开发环境不同项目中重写代码,这就造成了很大的资源浪费。动态链接库能较好的解决这个问题,重复利用代码将大大提高了开发效率。一般,用户在应用程序中基于如下要求创建和使用DLL:
  1. 在不同的可执行文件之间共享的程序;
  2. 在设计应用程序时,将其拆分成各个相互独立功能部件,为以后这些功能部件各自升级提供方便的途径。
  动态链接库将共享程序或功能部件做成库中的函数,形成DLL文件,其它应用程序通过使用DLL调用这些函数。在这里将对Delphi和VC中创建和使用动态链接库的方法做一介绍。Delphi和VC定义的动态链接库均可在两者的开发环境中使用。
  一、 用Delphi创建DLL
  Delphi的DLL创建并不复杂,下面向大家介绍Delphi的DLL创建方法。
  (1)首先创建一个新的DLL项目(NewProject)project1,文件头部为:
library Project1;
  (2)USES语句后面加入ExPorts语句,指明调用DLL的函数名,形式为:
exports
checkpwd name 'checkpwd';
  (3)在DLL的Pas文件中T ......
总记录数:40319; 总页数:6720; 每页6 条; 首页 上一页 [353] [354] [355] [356] 357 [358] [359] [360] [361] [362]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号