遍历文件名并在Erlang中移除扩展名
创始人
2024-12-04 12:00:05
0

以下是一个在Erlang中遍历文件名并移除扩展名的示例代码:

-module(file_utils).
-export([remove_extension/1, list_files/1]).

% 移除文件名的扩展名
remove_extension(FileName) ->
    case lists:splitwith(fun (C) -> C =/= $. end, lists:reverse(FileName)) of
        {_, []} -> FileName;
        {Base, _} -> lists:reverse(Base)
    end.

% 遍历目录并返回文件名列表
list_files(Directory) ->
    {ok, Files} = file:list_dir(Directory),
    [remove_extension(F) || F <- Files].

使用方法:

1> c(file_utils).
2> Directory = "/path/to/directory".
3> Files = file_utils:list_files(Directory).
4> io:format("Files: ~p~n", [Files]).

在上述示例中,remove_extension/1函数接受一个文件名作为参数,并尝试移除其扩展名。它将文件名反转,并使用lists:splitwith/2函数将文件名分割为不包含扩展名的基本部分和扩展名部分。如果没有找到扩展名,则返回原始文件名。

list_files/1函数接受一个目录作为参数,并使用file:list_dir/1函数列出该目录中的文件。然后,它使用列表推导来遍历文件列表,并对每个文件名应用remove_extension/1函数。最终,它返回移除了扩展名的文件名列表。

请注意,上述代码假设您已经具备访问文件系统的权限,并且Directory参数是一个有效的目录路径。

相关内容

热门资讯

最新技巧!中至打炸怎么让系统分... 最新技巧!中至打炸怎么让系统分好牌(辅助挂)都是是有挂(2020已更新)(哔哩哔哩)1、游戏颠覆性的...
微扑克ai机器人!微扑克软件发... 微扑克ai机器人!微扑克软件发牌管理,微扑克可以加入俱乐部(真是有挂);微扑克ai机器人!微扑克软件...
一分钟秒懂!老友麻将有挂吗(辅... 一分钟秒懂!老友麻将有挂吗(辅助)好像有挂(2020已更新)(哔哩哔哩)1、每一步都需要思考,不同水...
微扑克游戏辅助器!微扑克专用辅... 自定义微扑克系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助器,不管你是想分享...
实用技巧!wepoke软件透明... We辅poker助赢率提升策略‌;实用技巧!wepoke软件透明挂可以弄(wepokeai机器人)W...
玩家必看秘籍!武汉麻将助赢神器... 玩家必看秘籍!武汉麻将助赢神器(透视)本来存在有挂(2021已更新)(哔哩哔哩)所有人都在同一条线上...
微扑克系统发牌规律!微扑克可以... 1、微扑克系统发牌规律!微扑克可以在软件内设置,微扑克其实存在有挂,软件教程(有挂软件);详细教程。...
wepoke透明挂黑科技!wo... wepoke透明挂黑科技!wopoker辅助器免费版v2.0(辅助透视)wepOke(一贯真的有挂)...
大家学习交流!丽水茶苑有外 挂... 大家学习交流!丽水茶苑有外 挂是真的吗(辅助)总是有挂(2023已更新)(哔哩哔哩)1、丽水茶苑有外...
微扑克辅助器ios!微扑克辅助... 微扑克辅助器ios!微扑克辅助器是真的,微扑克软件的规律(切实有挂辅助挂)1、每一步都需要思考,不同...