Friday, May 25, 2007

用Xmanager等终端软件无法连接AIX的解决方案

显示错误:
XDMCP Connection failed.Try again?

解决方法:
AIX上无须进行任何配置,但是必须有XDMCP协议。服务程序在监听XDMCP端口。CDE的XDMCP服务器为
dtlogin,X Window本身的XDMCP服务器为xdm,当然GNU也有一些其它的服务器。如果AIX上安了CDE,则只要启动CDE即可。如果没有安装CDE,需要启动xdm。

以下命令可以确认XDMCP服务器已经启动:
netstat -an|grep 177

检查输出,确认状态为LISTEN。如果一切正常,就可以使用Xmanager通过登录了。

安装完Xmanager后,在Xbrowser中New一个XDMCP,选择XDM query,在Host输入框输入主机名或IP
地址,选Apply,然后Done,启动Xmanager就会显示图形登录介面了。

Thursday, May 24, 2007

股票学习——盘口(PS:这方法很不可靠)

许多时候,大资金时常利用盘口挂单技巧,引诱投资人做出错误的买卖决定,委买卖盘常失去原有意义,注重盯住盘口是关键,这将有效的发现主力的一举一动,从而更好的把握买卖时机。下面介绍几种看盘的技巧。

  上压板、下托板看主力意图和股价方向

  大量的委卖盘挂单俗称上压板;大量的委买盘挂单俗称下托板。无论上压下托,其目的都是为了操纵股价,诱人跟风,且股票处于不同价区时,其作用是不同的。

  当股价处于刚启动不久的中低价区时,主动性买盘较多,盘中出现了下托板,往往预示着主力做多意图,可考虑介入跟庄追势;若出现了下压板而股价却不跌反涨,则主力压盘吸货的可能性偏大,往往是大幅涨升的先兆。

  当股价升幅已大且处于高价区时,盘中出现了下托板,但走势却是价滞量增,此时要留神主力诱多出货;若此时上压板较多,且上涨无量时,则往往预示顶部即将出现股价将要下跌。

  连续出现的单向大买卖单

  1、盘口意义

  连续的单向大买单,显然非中小投资者所为,而大户也大多不会如此轻易买卖股票而滥用自己的钱。 大买单数量以整数居多,但也可能是零数。但不管怎样都说明有大资金在活动。比方如用大的买单或卖单告知对方自己的意图,像666手、555手,或者用特殊 数字含义的挂单比如1818手(要发要发)等,而一般投资者是绝不会这样挂单的。

  大单相对挂单较小且并不因此成交量有大幅改变,一般多为主力对敲所致。成交稀少的较为明显,此时应是处于吸货末期,进行最后打压吸货之时。大单相对挂单较大且成交量有大幅改变,是主力积极活动的征兆。如果涨跌相对温和,一般多为主力逐步增减仓所致。

  2、扫盘

  在涨势中常有大单从天而降,将卖盘挂单连续悉数吞噬,即称扫盘。在股价刚刚形成多头排列且涨势初起之际,若发现有大单一下子连续地横扫了多笔卖盘时,则预示主力正大举进场建仓,是投资人跟进的绝好时机。

  3、隐性买卖盘

  在买卖成交中,有的价位并未在委买卖挂单中出现,却在成交一栏里出现了,这就是隐性买卖盘,其中经常蕴含庄家的踪迹。单向整数连续隐性买单的出现,而挂盘并无明显变化,一般多为主力拉升初期的试盘动作或派发初期激活追涨跟风盘的启动盘口。

  一般来说,上有压板,而出现大量隐性主动性买盘(特别是大手笔),股价不跌,则是大幅上涨的先兆。下有托板,而出现大量隐性主动性卖盘,则往往是庄家出货的迹象。

  4、低迷期的大单

  首先,当某只股票长期低迷,某日股价启动,卖盘上挂出巨大抛单(每笔经常上百、上千手),买单 则比较少,此时如果有资金进场,将挂在卖一、卖二、卖三档的压单吃掉,可视为是主力建仓动作。注意,此时的压单并不一定是有人在抛空,有可能是庄家自己的 筹码,庄家在造量吸引注意。大牛股在启动前就时常出现这种情况。

  5、盘整时的大单

  当某股在某日正常平稳的运行之中,股价突然被盘中出现的上千手大抛单砸至跌停板附近,随后又被 快速拉起;或者股价被突然出现的上千手大买单拉升然后又快速归位。表明有主力在其中试盘,主力向下砸盘,是在试探基础的牢固程度,然后决定是否拉升。该股 如果一段时期总收下影线,则向上拉升可能大,反之出逃可能性大。

  6、下跌后的大单

  某只个股经过连续下跌,在其买一、买二、买三档常见大手笔买单挂出,这是绝对的护盘动作,但这 不意味着该股后市止跌了。因为在市场中,股价护是护不住的,“最好的防守是进攻”,主力护盘,证明其实力欠缺,否则可以推升股价。此时,该股股价往往还有 下降空间。但投资者可留意该股,因为该股套住了庄,一旦市场转强,这种股票往往一鸣惊人。

File,FileInputStream,FileReader,InputStreamReader,BufferedRe

File,FileInputStream,FileReader,InputStreamReader,BufferedReader的使用和区别
参考资料:
 《core java》12章
 使用Java操作文本文件的方法详解http://java.ccidnet.com/art/3737/20041108/523627_1.html
 FileReader 是什么类?和 FileInputStream 有什么不同???
http://book.hackbase.com/ask2/ask107572.htm

自己的整理和领会:

引言:
C语言只需要一个File*就可以了,与C不同,java有一系列流类型,其数量超过60种。类库的设计者声称:“有足够的理由为用户提供丰富的流类型的 选择:这样做可以减少程序的错误。”例如,在C语言种,许多人认为“将输出流写入一个只读模式的文件”是很常见的错误。(事实上,这并不常见。)

我们认为在C++语言中,流接口设计者避免程序出错的主要“工具”是小心谨慎的态度,在java语言中更是如此。流库的高度复杂性迫使程序设计人员谨小慎微。

1. File类
1)File类介绍(《core java》638页)
File类封装了对用户机器的文件系统进行操作的功能。例如,可以用File类获得文件上次修改的时间移动,或者对文件进行删除、重命名。换句话说,流类关注的是文件内容,而File类关注的是文件在磁盘上的存储。
File类的主要方法有:getName(),getCanonicalFile(),lastModified(),isDerector(),isFile(),getPath()等;

2)File类与FileInputStream类的区别:
流类关注的是文件内容,而File类关注的是文件在磁盘上的存储。

File不属于文件流,只能代表一个文件或是目录的路径名而已。

提示:(《core java》639页)
如果处理文件或者目录名,就应该使用File对象,而不是字符串。例如,File类的equals方法知道一些文件系统对大小写是敏感的,目录尾的“/”字符无关紧要。

自己的领会:
FileInputStream类或者FileReader类的构造函数有多个,其中典型的两个分别为:一个使用File对象为参数;而另一个使 用表示路径的String对象作为参数;自己以前一直觉得直接用了String指定路径就可以了,一直不明白为什么很多人都先构造一个File对象,现在 终于明白了,“如果处理文件或者目录名,就应该使用File对象,而不是字符串。”!
2. FileInputStream类
1)FileInputStream类介绍:
以字节为单位(非unicode)的流处理。字节序列即:二进制数据。与编码无关,不存在乱码问题。
FileInputStream类的主要方法有:
Read(),read(byte[] b),read(byte[],int off,int len),available();

2)FileInputStream类与FileReader类的区别:
两个类的构造函数的形式和参数都是相同的,参数为File对象或者表示路径的String,它们到底有何区别呢?
 Readers and Writers work only on line based character data, so plain text files.
For anything else, you MUST use Streams.
 JDK5 API:
FileInputStream is meant for reading streams of raw bytes such as image data. For reading streams of characters, consider using FileReader.
FileReader is meant for reading streams of characters. For reading streams of raw bytes, consider using a FileInputStream.

 FileInputStream:以字节流方式读取;FileReader:把文件转换为字符流读入;
 InputStream提供的是字节流的读取,而非文本读取,这是和Reader类的根本区别。用Reader读取出来的是char数组或者String ,使用InputStream读取出来的是byte数组。
 Reader类及其子类提供的字符流的读取char(16位,unicode编码),inputStream及其子类提供字节流的读取byte(8位), 所以FileReader类是将文件按字符流的方式读取,FileInputStream则按字节流的方式读取文件;InputStreamReader 可以将读如stream转换成字符流方式,是reader和stream之间的桥梁
 最初Java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类。
 FileInputStream类以二进制输入/输出,I/O速度快且效率高,但是它的read()方法读到的是一个字节(二进制数据),很不利于人们阅读。
 而FileReader类弥补了这个缺陷,可以以文本格式输入/输出,非常方便;比如可以使用while((ch = filereader.read())!=-1 )循环来读取文件;可以使用BufferedReader的readLine()方法一行一行的读取文本。
 当我们读写文本文件的时候,采用Reader是非常方便的,比如FileReader, InputStreamReader和BufferedReader。其中最重要的类是InputStreamReader,它是字节转换为字符的桥梁。 你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如GBK等。
 FileReader与InputStreamReader涉及编码转换(指定编码方式或者采用os默认编码),可能在不同的平台上出现乱码现象!而FileInputStream以二进制方式处理,不会出现乱码现象.
3)自己的领会:
 如果处理纯文本文件,建议使用FileReader,因为更方便,也更适合阅读;但是要注意编码问题!
 其他情况(处理非纯文本文件),FileInputStream是唯一的选择;FileInputStream是进Socket通讯时会用到很多,如将文件流是Stream的方式传向服务器!

3. FileReader类
1) FileReader类介绍:
InputStreamReader类的子类,所有方法(read()等)都从父类InputStreamReader中继承而来;
2) 与InputStreamReader类的区别:
 自己的领会:
该类与它的父类InputStreamReader的主要不同在于构造函数,主要区别也就在于构造函数!从InputStreamReader的 构造函数中看到,参数为InputStream和编码方式,可以看出,当要指定编码方式时,必须使用InputStreamReader类;而 FileReader构造函数的参数与FileInputStream同,为File对象或表示path的String,可以看出,当要根据File对象 或者String读取一个文件时,用FileReader;我想FileReader子类的作用也就在于这个小分工吧。
3) 一般用法:
FileReader fr = new FileReader("ming.txt");
  char[] buffer = new char[1024];
  int ch = 0;
  while((ch = fr.read())!=-1 )
  {
   System.out.print((char)ch);
  }
4. InputStreamReader类
 以文本格式输入/输出,可以指定编码格式;
 主要方法:
getEncoding(),read();
 一般用法:
InputStreamReader isr = new InputStreamReader(new FileInputStream("ming.txt"));
  while((ch = isr.read())!=-1)
  {
   System.out.print((char)ch);
  }
5. BufferedReader类
 Jdk5 api:
Read text from a character-input stream, buffering characters so as to provide for the efficient reading of characters, arrays, and lines.
 BufferedReader 由Reader类扩展而来,提供通用的缓冲方式文本读取,而且提供了很实用的readLine,读取分行文本很适合,BufferedReader是针对Reader的,不直接针对文件,也不是只针对文件读取。
 一般用法:
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("ming.txt")));
  String data = null;
  while((data = br.readLine())!=null)
  {
   System.out.println(data);
  }
6. 总结以上内容,得出比较好的规范用法:
1) File file = new File ("hello.txt");
FileInputStream in=new FileInputStream(file);
2) File file = new File ("hello.txt");
FileInputStream in=new FileInputStream(file);
InputStreamReader inReader=new InputStreamReader(in);
BufferedReader bufReader=new BufferedReader(inReader);
3) File file = new File ("hello.txt");
FileReader fileReader=new FileReader(file);
BufferedReader bufReader=new BufferedReader(fileReader);

Tuesday, May 22, 2007

读取远程文件,然后在指定目录下生成同样的文件

读取远程文件,然后在指定目录下生成同样的文件

private void FileWrite(String ftp,String DXBS,String fileName,String fileExt){
java.net.URL urlfile
= null;
HttpURLConnection httpUrl
= null;

try {

// 连接指定的网络资源,获取网络输入流
urlfile = new java.net.URL(ftp+"/"+DXBS+"/"+fileName+"."+fileExt);
httpUrl
= (HttpURLConnection) urlfile.openConnection();
httpUrl.connect();
int bytesum = 0;
int byteread = 0;
InputStream inStream
= httpUrl.getInputStream();
this.mkdir("d:/ftp/"+DXBS);
FileOutputStream fs
= new FileOutputStream("D:/ftp/"+DXBS+"/"+fileName+"."+fileExt);
byte[] buffer = new byte[1444];
while ((byteread = inStream.read(buffer)) != -1) {
bytesum
+= byteread;
fs.write(buffer,
0, byteread);
}

}
catch (Exception e) {

}


}


private void mkdir(String mkdirName) throws Exception {

File dirFile
= new File(mkdirName);
boolean bFile = dirFile.exists();
if (bFile == true) {
}
else {
bFile
= dirFile.mkdir();
if (bFile == true) {
}
else {
System.exit(
1);
}

}


}
大家看代码,第一个方法是读取远程的文件,生成同样的目录文件,下面的方法是生成文件夹,想必这个大家应该都能清楚明了。