當前位置:首頁 » 編程語言 » java代碼掃描

java代碼掃描

發布時間: 2023-05-31 02:04:58

① 區域網在線掃描 IP,MAC java源代碼

1.得到區域網網段,可由自己機器的IP來確定 (也可以手動獲取主機IP-CMD-ipconfig /all)
2.根據IP類型,一次遍歷區域網內IP地址
JAVA類,編譯之後直接運行便可以得到區域網內所有IP,具體怎樣使用你自己編寫相應代碼調用便可
代碼如下::
package bean;
import java.io.*;
import java.util.*;
public class Ip{
static public HashMap ping; //ping 後的結果集
public HashMap getPing(){ //用來得到ping後的結果集
return ping;
}
//當前線程的數量, 防止過多線程摧毀電腦
static int threadCount = 0;
public Ip() {
ping = new HashMap();
}
public void Ping(String ip) throws Exception{
//最多30個線程
while(threadCount>30)
Thread.sleep(50);
threadCount +=1;
PingIp p = new PingIp(ip);
p.start();
}
public void PingAll() throws Exception{
//首先得到本機的IP,得到網段
InetAddress host = InetAddress.getLocalHost();
String hostAddress = host.getHostAddress();
int k=0;
k=hostAddress.lastIndexOf(「.」);
String ss = hostAddress.substring(0,k+1);
for(int i=1;i <=255;i++){ //對所有區域網Ip
String iip=ss+i;
Ping(iip);
}
//等著所有Ping結束
while(threadCount>0)
Thread.sleep(50);
}
public static void main(String[] args) throws Exception{
Ip ip= new Ip();
ip.PingAll();
java.util.Set entries = ping.entrySet();
Iterator iter=entries.iterator();
String k;
while(iter.hasNext()){
Map.Entry entry=(Map.Entry)iter.next();
String key=(String)entry.getKey();
String value=(String)entry.getValue();
if(value.equals(「true」))
System.out.println(key+「-->」+value);
}
}
class PingIp extends Thread{
public String ip; // IP
public PingIp(String ip){
this.ip=ip;
}
public void run(){
try{
Process p= Runtime.getRuntime()。exec (「ping 」+ip+ 「 -w 300 -n 1」);
InputStreamReader ir = new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader (ir);
//讀取結果行
for (int i=1 ; i <7; i++)
input.readLine();
String line= input.readLine();
if (line.length() <17 || line.substring(8,17)。equals(「timed out」))
ping.put(ip,「false」);
else
ping.put(ip,「true」);
//線程結束
threadCount -= 1;
}catch (IOException e){}
}
}
}

② 請教大神,怎麼使用java實現UDP埠掃描

給你個UDP服務端與客戶端的示例:

服務端代碼:


importjava.net.DatagramPacket;
importjava.net.InetAddress;
importjava.net.MulticastSocket;

publicclassUDPMulticastServer{
finalstaticintRECEIVE_LENGTH=1024;

staticStringmulticastHost="224.0.0.1";

staticintlocalPort=9998;

publicstaticvoidmain(String[]args)throwsException{

InetAddressreceiveAddress=InetAddress.getByName(multicastHost);

if(!receiveAddress.isMulticastAddress()){//測試是否為多播地址

thrownewException("請使用多播地址");

}

intport=localPort;

=newMulticastSocket(port);

receiveMulticast.joinGroup(receiveAddress);


booleanisStop=false;
while(!isStop){
DatagramPacketdp=newDatagramPacket(newbyte[RECEIVE_LENGTH],RECEIVE_LENGTH);
receiveMulticast.receive(dp);
Stringdata=newString(dp.getData()).trim();
System.out.println(data);
if("exit".equals(data)){
System.out.println("程序退出");
isStop=true;
}
}

receiveMulticast.close();
}
}

客戶端代碼:


importjava.net.DatagramPacket;
importjava.net.InetAddress;
importjava.net.MulticastSocket;

publicclassUDPMulticastClient{
staticStringdestAddressStr="224.0.0.1";

staticintdestPortInt=9998;

staticintTTLTime=4;

publicstaticvoidmain(String[]args)throwsException{ InetAddressdestAddress=InetAddress.getByName(destAddressStr);

if(!destAddress.isMulticastAddress()){//檢測該地址是否是多播地址

thrownewException("地址不是多播地址");

}

intdestPort=destPortInt;


MulticastSocketmultiSocket=newMulticastSocket();

// intTTL=TTLTime;
// multiSocket.setTimeToLive(TTL);

byte[]sendMSG="exit".getBytes();

DatagramPacketdp=newDatagramPacket(sendMSG,sendMSG.length,destAddress,destPort);

multiSocket.send(dp);

multiSocket.close();

}

}

③ 用java寫一段程序掃描文件夾下所有後綴為.txt的文件代碼

《用java寫一段程序掃描文件夾下所有後綴》網路網盤txt 最新全集下載

鏈接: https://pan..com/s/1nKtaJpp1I3E0tTe3BGVS9Q

提取碼: y69m

Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。

④ fortify怎麼掃描java

Fortify SCA 有兩個文件:auditworkbench.cmd和sourceanalyzer.exe,auditworkbench.cmd是查看靜態分析報告的工具,sourceanalyzer.exe是靜態代碼分析器。這里我們還看到了一個FindBugs的目錄,這是因為這個版本的Fortify集成了此功能,你可以通過傳參給sourceanalyzer.exe調用FindBugs(但我一般不這么做,可以直接使用FindBugs的話,為什麼還要通過sourceanalyzer.exe調呢?)。
開始掃描靜態分析,首先CMD進入Java源代碼目錄,然後「H:\Fortify\sourceanalyzer.exe -classpath "**/*.jar" -f test.fpr .」,在當前目錄得到結果報告test.fpr。
更多Fortify SCA 問題可以咨詢我

⑤ 靜態代碼掃描工具 哪個好 java

1、 Checkstyle
Checkstyle 是SourceForge的開源項目,通過檢查對代碼編碼格式,命名約定,Javadoc,類設計等方面進行代碼規范和風格的檢查,從而有效約束開發人員更好地遵循代碼編寫規范。Checkstyle 提供了支持大多數常見IDE的插件。

2、FindBugs
FindBugs 是由馬里蘭大學提供的一款開源 Java 靜態代碼分析工具。FindBugs 通過檢查類文件或 JAR 文件,將位元組碼與一組缺陷模式進行對比從而發現代碼缺陷,完成靜態代碼分析。FindBugs 既提供可視化 UI 界面,同時也可以作為 Eclipse 插件使用。

3、PMD
PMD 是由 DARPA 在 SourceForge 上發布的開源 Java 代碼靜態分析工具。PMD 通過其內置的編碼規則對 Java 代碼進行靜態檢查,主要包括對潛在的 bug,未使用的代碼,重復的代碼,循環體創建新對象等問題的檢驗。PMD 提供了和多種 Java IDE 的集成,例如 Eclipse,IDEA,NetBean 等。

4、Jtest
Jtest 是Parasoft 公司推出的一款針對Java語言的自動化代碼優化和測試工具,Jtest 的靜態代碼分析功能能夠按照其內置的超過800條的 Java 編碼規范自動檢查並糾正這些隱蔽且難以修復的編碼錯誤。同時,還支持用戶自定義編碼規則,幫助用戶預防一些特殊用法的錯誤。

⑥ java掃描區域網的埠

直接上代碼:

importjava.net.Socket;
importjava.text.SimpleDateFormat;
importjava.util.Date;

{

privateint[]p;
Socketss=null;

publicPortScanner(int[]p){
this.p=p;
}

publicstaticvoidmain(String[]args){
for(inti=0;i<65535;i=i+100){
newPortScanner(newint[]{i+1,i+100}).start();
}
}

@Override
publicvoidrun(){
for(inti=p[0];i<p[1];i++){
try{
ss=newSocket("8.8.8.8",i);
System.out.println("掃描到埠:"+i);
}catch(Exceptione){
//System.out.println("關閉埠:"+i);
}
}
}
}

⑦ 有沒有用java代碼操作nmap進行過埠掃描的

nmap埠狀態解析

open , 應用程序在該埠接收 TCP 連接或者 UDP 報文。

closed 關閉的埠對於nmap也是可訪問的, 它接收nmap探測報文並作出響應。但沒有應用程序在其上監聽。

filtered 由於包過濾阻止探測報文到達埠,nmap無法確定該埠是否開放。過濾可能來自專業的防火牆設備,路由規則 或者主機上的軟體防火牆。

unfiltered 未被過濾狀態意味著埠可訪問,但是nmap無法確定它是開放還是關閉。 只有用於映射防火牆規則集的 ACK 掃描才會把埠分類到這個狀態。

⑧ java中怎麼調用掃描儀

1。先搞清楚要在哪種類型的程序中調用掃描儀
如果開發的程序是java application或者基於 swing的程序,可以算作是單機或者 c/s架構的程序,applet和java fx技術也可以這么算,因為都是直接通過java程序去操控掃描儀設備。
如果是基於瀏覽器的應用,即b/s架構的程序,掃描圖像的工作是在客戶端完成的,這種情況下Java程序其實是接收和保存掃描儀讀取的圖像結果,並不需要直接的控制掃描儀工作,這一點上和c/s架構的程序有本質的區別。
2。架構與技術應用
2.1 c/s架構程序的掃描儀調用
c/s架構需要通過java代碼直接操控掃描儀設備,java語言本身被設計為跨o/s平台,對特定平台的硬體操控能力有限,因此需要藉助外部技術實現掃描儀控制調用,可以通過jni(java原生應用程序介面) 技術去實現掃描儀調用,具體的細節實現就是jni中定義掃描儀操作方法,如scan()等方法,然後使用javah生成c語言的.h頭文件,然後使用vc等編程語言去實現jni介面方法。
在windows平台和mac平台上面,操作掃描儀都可以通過twain協議
總之c/s架構的java程序調用掃描儀通過jni+twain編程既可完成。
2.2 b/s架構程序的掃描儀調用
b/s架構的掃描儀調用在前面已經提到過,java程序實現上做的事情是接收掃描結果圖像數據 ,例如在struts2的 action中或者jsp/servlet等等程序中接收掃描儀圖像掃描結果,真實的客戶端掃描儀調用應該藉助客戶端技術去實現。
在Linux中的Mozilla瀏覽器中如何調用掃描儀掃描圖像呢?這個著實是個難題,需要做Mozilla的插件才可以,但是在windows平台有ActiveX技術供程序員使用,因此瀏覽器是在windows平台中的話藉助Activex技術即可擴展瀏覽器能力。

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:335
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:943
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:739
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:371