首页 系统教程 Windows系列 如何在Windows控制台上利用Perl处理UTF8

如何在Windows控制台上利用Perl处理UTF8

Jan 12, 2024 am 09:42 AM

如何在Windows控制台上利用Perl处理UTF8

如何在Windows控制台上利用Perl处理UTF8

制定控制台使用UTF8,显示出来的字体也很难看,当Perl程序和Perl要读取的文件都使用UTF8编码时,怎么办呢?先看如下程序:

#!/usr/bin/perl

use encoding 'utf8', STDIN=>'gb2312', STDOUT=>'gb2312';

open(FILE,"c:\test1.txt");

binmode(FILE,":encoding(utf8)");

@lines=;

close(FILE);

for($i=0; $i

print $lines[$i];

print "n";

}

$str="你好";

print $str;

该程序用Perl去读取一个文本文件test1.txt,然后显示到控制台上。关键在于:

1. use encoding 'utf8', STDIN=>'gb2312', STDOUT=>'gb2312';

use encoding 'utf8' : 指定该脚本文件的编码格式为utf8;

STDIN=>'gb2312', STDOUT=>'gb2312': 输入和输出采用GB2312字符集。

这样,Perl脚本中的的汉字即可被输出。

2:binmode(FILE,":encoding(utf8)");

指定打开的文件FILE的编码格式为utf8,这样就能正确的读入数据到@lines中了。

这样就实现了Perl在Windows控制台上处理UTF8字符了。

Perl如何读取文本的最后一行非空字符串

三个方法如下:

#!/bin/perl -w

use strict;

my $str = "abcsfsaf#sdagasdga#sdgaghoiiopjh#dsfjkopa hkl;fjh#dsjfklpafj";

########### 方法一

my $pos = -1;

my $num = 0;

while (($pos = index($str, "#", $pos)) >-1) {

print "found at $posn";

$pos++;

$num ++;

}

print "找到$num个!n";

###############################################################

# 方法二

my $count = 0;

while( $str =~ /#/g )

{

$count ++;

}

print $count,"n";

##########################################

# 方法3

my $cc = 0;

my $tmp = 0;

if( $tmp = () = ($str =~ /#/g ) )

{

$cc += $tmp;

}

print "$ccn";

用Perl语言:写一个程序读入一串单词一个单词一行输出每一

#/usr/bin/perl

open (IN, 'D:\words.txt ') || die $!;

@words=();

close IN;

open (OUT,'>','D:\wordlist.txt')or die $!;

foreach $line(@words){

$line=~s/n//g;

@words=split /s+/,$line;

foreach $word(@words){

$word=~s/W+//;

$freq {$word}++;

print OUT $word ."=>". $freq{$word}."n";

}

}

close OUT;

你试一下这个程序,文件可以不用每行一个单词,直接读取原文本就好!有问题再交流!

教一个perl程序题:从文件中读取内容内容就一排是一些文字

#!/usr/bin/perl -w

use strict;

die "perl $0 " unless(@ARGV==1);

open (IN,$ARGV[0]) or die "Can't open file $ARGV[0]!n";

open (OUT,">data2") or die "Can't create file data2n";

while(){

chomp;

my @tmp=split /t/,$_;

for(my $tmpc=1;$tmpcif($tmp[$tmpc-1] eq $tmp[$tmpc]){

print OUT "$tmp[$tmpc-1]@2t@@@";

$tmpc++;

next;

}

print OUT "t$tmp[$tmpc-1]";

}

print OUT "n";

}

以上是如何在Windows控制台上利用Perl处理UTF8的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

微软的新PowerToys搜索是缺少功能Windows 11需求 微软的新PowerToys搜索是缺少功能Windows 11需求 Apr 03, 2025 am 03:53 AM

微软的最新PowerToys更新引入了改变游戏的搜索功能,让人联想到MacOS的聚光灯。 此改进的“命令调色板”(以前是PowerToys运行)超过Windows R Run命令的功能和任务

Windows KB5054979更新信息更新内容列表 Windows KB5054979更新信息更新内容列表 Apr 15, 2025 pm 05:36 PM

KB5054979是2025年3月27日发布的Windows 11版本24H2的累积安全更新。它针对.NET框架版本3.5和4.8.1,增强了安全性和整体稳定性。值得注意的是,该更新使用System.io API在UNC共享的文件和目录操作中解决了问题。提供了两种安装方法:一个通过Windows设置通过Windows Update下的更新,另一个通过Microsoft Update Catalog下载手册下载。

如何禁用Windows 11圆角:4种简单的方法! 如何禁用Windows 11圆角:4种简单的方法! Mar 27, 2025 pm 03:27 PM

本指南提供了四种方法来删除Windows 11中的圆角,从而恢复了经典的方形外观。 虽然圆角提供了现代美感,但一些用户更喜欢更清晰的外观,原因包括改进的屏幕截图

为什么有些键盘盘绕电缆? 为什么有些键盘盘绕电缆? Mar 27, 2025 pm 09:01 PM

对于机械键盘爱好者来说,那些有趣的盘绕电缆是常见的景象。但是为什么要线圈? 让我们深入研究原因。 盘绕电缆:主要是美学 盘绕电缆的主要吸引力是它们的视觉吸引力。他们增强了外观

这些是我的付费Windows应用程序的免费替代方案 这些是我的付费Windows应用程序的免费替代方案 Apr 04, 2025 am 03:42 AM

许多免费应用程序在功能上与他们的付费同行抗衡。 该列表展示了流行付费软件的绝佳免费Windows替代方案。 我坚信使用免费软件,除非有付费选项提供至关重要的,缺失的功能。 这些

您今天可以以低于$ 150的价格购买这台功能强大的迷你电脑 您今天可以以低于$ 150的价格购买这台功能强大的迷你电脑 Apr 02, 2025 am 03:55 AM

Kamrui GK3Plus Mini PC:小巧强劲,价格实惠! 亚马逊春季大促期间,Kamrui GK3Plus Mini PC售价低至150美元以下!这款迷你电脑性能强劲,升级方便,体积小巧,是追求性价比用户的理想之选。 无论是迷你电脑爱好者,还是初次尝试小型电脑的用户,Kamrui GK3Plus Mini PC都是一个绝佳的入门选择。原价199美元,目前亚马逊享受15%折扣(以及20美元优惠券),不到149美元即可入手。 如此亲民的价格,却拥有不俗的配置:搭载略显老旧但仍可胜任的In

这个第三方文件经理令人印象深刻,我用它代替了Windows File Explorer 这个第三方文件经理令人印象深刻,我用它代替了Windows File Explorer Apr 05, 2025 am 03:50 AM

文件飞行员:卓越的Windows 11文件资源管理器更换? Onecommander,Directory Opus和Q-Dir是流行的Windows 11文件资源管理器替代方案。 但是,文件飞行员脱颖而出,为永久切换提供了令人信服的理由。 特殊的sp

微软终于在Windows 11中解决了另一个任务栏问题 微软终于在Windows 11中解决了另一个任务栏问题 Apr 05, 2025 am 03:51 AM

Windows 11任务栏获得可自定义的图标尺寸:长期改进 自Windows 7以来,Windows Taskbar的设计已有16年的历史。 WH

See all articles