⑴ 想用易語言寫一個隨機抽取電腦里的一個文件夾里的文件,代碼怎麼寫
把文件名放入數組,取隨機數得到成員位置,從成員中讀取文件名。
以下是我寫的一個程序的數據初始化部分:
.版本 2
.子程序 數據初始化, , , 讀入數據文件,完成圖片、聲音、中英文意義的初始
.局部變數 臨時變數, 文本型, , , 用來記錄兩組之間的分隔
連續賦值 (「」, 編輯框中文意思.內容, 編輯框英文單詞.內容)
數組清零 (顯示圖片名)
數組清零 (聲音名)
數組清零 (中文名)
數組清零 (英文名)
數組清零 (圖片數據)
連續賦值 (「」, 編輯框中文意思.內容, 編輯框英文單詞.內容)
主圖片框.圖片 = #封面
圖片總數 = 1
當前序號 = 1
' 讀取文件名
當前文件號 = 打開文件 (「data.txt」, , )
.變數循環首 (1, 100, 1, )
顯示圖片名 [圖片總數] = 讀入一行 (當前文件號)
.如果 (顯示圖片名 [圖片總數] = 「」)
圖片總數 = 圖片總數 - 1
跳出循環 ()
.否則
.如果結束
聲音名 [圖片總數] = 讀入一行 (當前文件號)
.如果 (聲音名 [圖片總數] = 「」)
圖片總數 = 圖片總數 - 1
跳出循環 ()
.否則
.如果結束
中文名 [圖片總數] = 讀入一行 (當前文件號)
.如果 (中文名 [圖片總數] = 「」)
圖片總數 = 圖片總數 - 1
跳出循環 ()
.否則
.如果結束
英文名 [圖片總數] = 讀入一行 (當前文件號)
.如果 (英文名 [圖片總數] = 「」)
圖片總數 = 圖片總數 - 1
跳出循環 ()
.否則
.如果結束
臨時變數 = 讀入一行 (當前文件號)
圖片總數 = 圖片總數 + 1
.變數循環尾 ()
關閉文件 (當前文件號)
' 以下為讀入圖片
.計次循環首 (圖片總數, 當前序號)
當前文件號 = 打開文件 (「data\」 + 顯示圖片名 [當前序號], , )
.如果 (當前文件號 ≠ 0)
圖片數據 [當前序號] = 讀入位元組集 (當前文件號, 取文件長度 (當前文件號))
.否則
文件未找到 (「圖片」 + #左引號 + 顯示圖片名 [當前序號] + #右引號)
圖片數據 [當前序號] = #封面
.如果結束
關閉文件 (當前文件號)
.計次循環尾 ()
按鈕自動.獲取焦點 ()
⑵ 怎樣在EXCEL中將引用單元格所在的文件名設置成隨機
可以用indirect建立動態區域引用。
但是有局限:所引用的對象文件必須要打開,否則會出現#ref錯誤(找不到數據源文件)。
一個解決的辦法:將「統計匯總」文件和D盤的數據文件存為一個工作區文件,打開時一起打開;但如果文件很多可能不好弄,效率很低。
⑶ 生成隨機文件名
#include "stdio.h"
#include "time.h"
char name[11];
char * fun()
{
int i,j;
char c;
for (i=0;i<10;i++)
{
c=rand()%26+65;
name[i]=c;
}
return name;
}
void printarr()
{
int i;
for (i=0;i<10;i++)
{
printf("%c",name[i]);
}
printf("\n");
}
main()
{
int i;
for (i=0;i<10;i++)
{
fun();
printarr();
}
}
/*隨機生成10組隨機名,自己可以改變一下得到自己想要的。*/
⑷ 易語言怎麼隨機取出某個文件夾中的文件名
記得一定要在取隨機數前面寫上 置隨機數種子() 這條命令
⑸ 文件夾F:\\txt中有很多txt文件,用java隨機讀取一個txt文件,然後將之復制粘貼到D:\\txt中。
import java.io.File;
public class FileTest {
public static void main(String[] args) {
File files = new File("F:\\txt\\");
File file[] = files.listFiles();//獲得目錄中的文件及子目錄信息
int i = (int) (Math.random()*file.length);
fun(file,i);
}
public static void fun(File file[],int i){
if(file[i].exists()){//如果文件存在
String name = file[i].getName();//獲取文件名
if(file[i].isFile()&&name.endsWith(".txt")){ //如果是文件並且後綴名為.txt
File dest = new File("D:\\txt\\"+file[i].getName());
file[i].renameTo(dest);
}
else{
int j = (int) (Math.random()*file.length);
fun(file,j);
}
}else{
int j = (int) (Math.random()*file.length);
fun(file,j);
}
}
}
⑹ 隨機讀取文件名
for i=1 to 5
判斷記錄是否到底,如果到底,返回記錄頭
讀一條記錄
隨機數,並判斷是否讀取
如果不讀取,i=i-1
next