⑴ 如何才能用EXCEL去連接SQL 資料庫讀取數據!!!!
1、首先打開SQL
Server資料庫,准備一個要導入的數據表,如下圖所示,數據表中插入一些數據
2、接下來打開Excel軟體,點擊數據菜單,然後選擇其他來源下面的來自SQL
Server選項
3、然後會彈出資料庫連接向導界面,在輸入框裡面輸入伺服器名稱,也就是計算機名
4、接下來就會出現導入內容的具體設置界面了,我們選擇要導入表,並且選擇一個空白單元格位置作為數據的導入位置
5、最後點擊確定按鈕,我們就可以看到SQL
Server中的數據就導入進Excel里了
⑵ Java中從文件中讀取數據用什麼函數
一:用Scanner可以很好的達到讀寫文件的作用。
但是學習過程中,由於Scanner的構造函數的參數是InputStream,搞得有點糊塗。後來發現InputStream是一個抽象類,FileInputStream是它的一個子類。而FileInputStream可以以String或File為參數讀入文件流,然後用這個FileInputStream對象初始化一個Scanner,如sin。然後就可以像手動輸入一樣使用sin讀入文件中的信息。用sin.hasnext()表示是否讀到文件結尾。
對應的可以用PrintStream達到寫入文件的效果,它要用一個FileOutputStream(或File file或String filename)作構造函數的參數,然後就可以像在控制台中顯示數據一樣寫入文件。
二:可以用DataInputStream對象實現文件的讀入,其構造函數的參數也是InputStream,所以也可以用FileInputStream,讀取用DataInputStream.readInt()等即可,DataInputStream.readXX()會拋出EOFException()和IOException()。並且在讀到文件結尾時會返回-1。另外用DataInputStream.available()==0表示讀到文件結尾。
寫入文件可以用DataOutputStream對象,寫入可以用DataOutputStream.writeXX(),注意,這些writeXX()都是以二進制的方式寫入的,所以直接打開文件顯示的是亂碼。要顯示寫入文件中的int等數據,要以String形式讀入。雖然顯示的是亂碼,但是用DataInputStream的readXX()可以以int等類型讀入。
⑶ 如何讀取CSV文件以及如何讀取帶有字元串數據項的CSV文件
TEK示波器讀取的波形圖數據存為.csv,雖然用Excel可以直接打開,但是在Matlab裡面讀取的時候,csvread和xlsread用法還是有些不同的%Get data from a specified region in a sheet other than thefirst sheet:Numeric=xlsread(『c:\matlab\work\myspreadsheet』,』sheet2』,』a2:j5』);M=CSVREAD(『FILENAME』,R,C) reads data from the comma separatedvalue formatted file starting at row R and column C. R and C arezero based so that R=0 and C=0 specifies the first value in thefile.(如果數據行從15行開始,則R=14;從第一列開始則C=0)M=CSVREAD(『FILENAME』,R,C,RNG) reads only the range specified byRND=[R1 C1 R2 C2] where (R1,C1)is the upper-left corner of the datato be read and (R2,C2) is the lower-right corner. RNG can also bespecified using spreadsheet notation as inRNG=』A1..B7』;想要確定添加個范圍,比如A15:B10014,則RND=[14 0 10013 1]因為從示波器出來的圖需要一些額外的數據處理才行,所以要進行一些運算;這些在得到了返回的M後就是一個數組,直接用就OK比如%找到第2列裡面的最大值or最小值X=max(M(:,2)) or X=max(M(:,2))%返回最大值所在列的編號Num=find(M(:,2)==max(M(:,2)))%得到對應行第1列的值Y=M(find(M(:,2)==max(M(:,2))),1)M(:,1)=M(:,1)*1E+08*12.5;%min=min(M(:,2));%max=max(M(:,2));M(:,2)=(M(:,2)-min(M(:,2)))/(max(M(:,2))-min(M(:,2)));M(:,1)=M(:,1)-M(find(M(:,2)==max(M(:,2))),1);這樣數據就處理完了,然後就是
⑷ 汽車數據流使用什麼儀器讀取與汽車診斷儀有區別嗎
有區別
常規檢測儀如遠征431。車博士。金奔騰。大眾的1552。1551。5053
象使用這樣的檢測儀
檢測出的數據基本是一樣的
另外現在很多不知名的檢測儀也很多
他們讀出來的數據流就相對不是很准確了
在這方面本人有很大體會。
個人意見想讀取准確的數據流盡量使用比較知名的檢測儀
⑸ 如何用matlab讀取數據並按指定格式輸出
MATLAB圖像處理工具箱支持四種基本圖像類型:索引圖像、灰度圖像、二進制圖像和RGB圖像。MATLAB直接從圖像文件中讀取的圖像為RGB圖像。它存儲在三維數組中。這個三維數組有三個面,依次對應於紅(Red)、綠(Green)、藍(Blue)三種顏色,而面中的數據則分別是這三種顏色的強度值,面中的元素對應於圖像中的像素點。設所得矩陣為X三維矩陣(256,256,3) ,X(:,:,1)代表紅顏色的2維矩陣 X(:,:,2)代表綠顏色的2維矩陣, X(:,:,3)代表蘭顏色的2維矩陣。[X, map]=imread('34.bmp');r=double(X(:,:,1)); %r是256 x 256的紅色信息矩陣g=double(X(:,:,2)); %g是256 x 256的綠色信息矩陣b=double(X(:,:,3)); %b是256 x 256的蘭色信息矩陣
索引圖像數據包括圖像矩陣X與顏色圖數組map,其中顏色圖map是按圖像中顏色值進行排序後的數組。對於每個像素,圖像矩陣X包含一個值,這個值就是顏色圖數組map中的索引。顏色圖map為m×3雙精度矩陣,各行分別指定紅、綠、藍(R、G、B)單色值,map=[RGB],R、G、B為值域為[0,1]的實數值,m為索引圖像包含的像素個數。
對於相同的數據,採用uint8格式比雙精度格式節省內存空間,從而更經濟。在MATLAB中
如果索引圖像的顏色圖小於256行,則它的圖像矩陣以uint8格式存儲,否則以雙精度格式存儲。
一:imread:從圖像文件夾中讀取圖像。
A = imread(FILENAME,FMT) 讀取圖像到A,如果文件是包含一灰度圖像,A是一二維矩陣,如果文件是包含一真彩色圖像(RGB),A是一三維矩陣(M-by-N-by-3)。FILENAME :圖像文件名;FMT:圖像文件格式;
文件必須在當前目錄下,或在Matlab的一路徑上。如果 imread不能夠找到一名稱為FILENAME的文件,那麼它將找一名為FILENAME.FMT的文件
[X,MAP] = imread(FILENAME,FMT) 把圖像FILENAME讀入與它相關的圖像色彩信息寫入MAP,圖像色彩信息值在范圍[0,1]中自動地重新調整.
[...] = imread(FILENAME)這種方式是試圖得到文件的格式從文件所包含的信息。
[...] = imread(URL,...)從一Internet URL上讀圖像 URL 必須包含協議(即: "http://").
1.2數據類型:
TIFF的特殊語法:
[...] = imread(...,IDX) 從很多圖像TIFF文件中讀一個圖像;IDX是一個整數值,它顯示了所讀圖像在文件中的順序,例如:如果 IDX是 3, imread將讀文件中的第三個圖像。 如果省略了這個變數, imread將讀文件中的第一個圖像.
IMREAD支持的圖像文件格式:JPEG TIFF GIF BMP PNG HDF PCX XWD ICO CUR RAS PBM PGM PPM
相關信息也可在Matlab中查看: imfinfo, imwrite, imformats, fread,
二:imwrite輸出圖像
imwrite(A,FILENAME,FMT) 把圖像 A 寫入圖像文件 FILENAME.
imwrite(X,MAP,FILENAME,FMT) 把 X和它的相關色彩信息MAP寫入FILENAME.
imwrite(...,FILENAME) 把圖像 寫入圖像文件FILENAME,並推測可能的格式用來做filename的擴展名。擴展名必須是FMT中一合法名.
imwrite(...,PARAM1,VAL1,PARAM2,VAL2,...) 不同的參數控制輸出文件的各種不同特徵。參數要是當前所支持的HDF,JPEG, TIFF, PNG, PBM, PGM, 和PPM 文件
三:image 顯示圖像.image(C) 把矩陣 C 轉成一圖像. C 可以是一MxN 或 MxNx3維的矩陣,且可以是包含 double, uint8,或 uint16 數據.image是用來顯示附標圖像,即顯示的圖像上有x,y坐標軸的顯示,可以看到圖像的像素大小。但可以加上axis off命令即可把坐標去掉。
imshow只是顯示圖像。用colormap來定義圖像顯示用的顏色查找表,比如用colormap(pink),可以把黑白圖像顯示成帶粉紅色的圖像。
圖像像素矩陣的數據類型:(1)顯示真彩色圖像像素三維矩陣X,如果是uint8類型,要求矩陣的數據范圍為0-255,(2)如果是double型,則其數據范圍為0-1,要不就會出錯或者出現空白頁。
類型轉換:(1)如果你原來的數值是uint8,在運算中轉換為double後,實際要顯示的數值沒有改變的話,只要用uint8(X)就可轉換為uint8型,如果不想轉換頻繁,也可在顯示時用X/255來轉換為符合0-1double類型範圍要求的數值顯示。(2)如果顯示索引圖像(二維矩陣),如果索引圖像像素數值是double型,則它的取值范圍為1-length(colormap),數值起點為1,則矩陣中數值為1的對應colormap中第一行數據,如果索引圖像像素數值是uint8,則取值范圍為0-255,數值起點為0,則矩陣中數值為0的對應colormap中第一行數據,所以索引圖像這兩個數據類型之間的轉換,要考慮到+1或-1。直接用uint8或double轉換則會查找移位,產生失真情況。uint16數據類型與uint8類似,取值范圍為0-65536。
四:其它常用圖像操作:
圖像顯示於屏幕有imshow( ), image( )函數;
圖像進行裁剪imcrop( );
圖像的插值縮放imresize( )函數實現;
旋轉用 imrotate( )實現。
五:具體的操作
下面通過運用圖像處理工具箱中的有關函數對下圖(nice.bmp)進行一些變換。見後面的transfer.m內容!
變換前圖片:(nice.bmp)
變換後所得圖片:newpic.bmp
例,在電腦F\picture下有一彩色圖像文件nice.bmp,則可由下述語句讀取:
下面是對圖像 nice.bmp以y軸為對稱軸所做的一個對稱變換。
% Transfer1.m
clear all
figure
[x,map]=imread('F:\picture\nice.bmp');% 所得x為一375x420x3的矩陣
[w1,w2,w3]=size(x); % 375 X 420
w22=floor(w2/2);
image(x); %顯示出圖像
title('HELLO! @This is the first pose of me')%則顯示出圖像nice.bmp
axis off; % 去掉圖像中的坐標
colormap(map); % colormap(),圖像查找表函數。函數結構為colormap(map),設置當前的圖像查找表到map。
imwrite(x,map,'nice.bmp')
for i=1:w1
for j=1:w22 % 圖像關於y軸對折
t=x(i,j);
x(i,j)=x(i,w2-j+1);
x(i,w2-j+1)=t;
end
end
figure
image(x);
axis off
title('HELLO!!@@ Can you find any difference of my two picture! ') colormap(map);
imwrite(x,map,'newpic.bmp') %把x寫到nepic2.bmpz中去
% Transfer1.m文件中包含了最基本也是最常用的對讀像處理的命令。
在對圖像處理的整個過程中,實質上是對[x,map]=