首页 > 其他分享 >2024-12-30 文件输出和Wireshark_Intro_v7.0

2024-12-30 文件输出和Wireshark_Intro_v7.0

时间:2025-01-01 16:40:59浏览次数:1  
标签:fp count 12 读取 fscanf 30 2024 fprintf HTTPS

fscanffprintf 的区别

函数 用途 示例
fscanf 从文件中读取格式化数据 fscanf(fp, "记录数: %d\n", &count);
fprintf 向文件中写入格式化数据 fprintf(fp, "记录数: %d\n", count);
在读取或写入文件时,fscanffprintf 的功能是通过指定格式化字符串来解析或生成数据。它们的行为完全取决于格式化字符串的定义。

如何跳过中文字符

中文字符在 fscanffprintf 中只被视为普通的文本。只要格式化字符串不尝试解析这些文本,它们就会被跳过或按字面意义写入文件。


fscanf 的行为

对于你提供的记录格式,可以使用以下格式化字符串来读取记录,同时跳过中文描述:

c

Copy code

FILE *fp = fopen("c:/zymdata1.txt", "r"); if (fp == NULL) { printf("文件打开失败!\n"); return -1; } // 读取记录数 int record_count; fscanf(fp, "记录数: %d\n", &record_count); rec_table.count = record_count; // 读取每条记录 for (int i = 0; i < record_count; i++) { Student *s = &rec_table.students[i]; fscanf(fp, "ID: %d, 班级: %d, 姓名: %[^,], 开始时间: %02d:%02d, 费用: %f\n", &s->id, &s->class, s->name, &s->start_time.hour, &s->start_time.minute, &s->cost); } fclose(fp);

解析关键点

  1. 跳过中文描述

    • fscanf(fp, "记录数: %d\n", &record_count); 会读取 记录数: 和后面的数字,中文部分被直接跳过,因为格式化字符串没有明确读取它。
  2. 读取每条记录

    • 使用 %d 读取 ID班级
    • 使用 %[^,] 读取到逗号前的所有字符作为 姓名
    • 使用 %02d:%02d 读取 开始时间 的小时和分钟。
    • 使用 %f 读取 费用

fprintf 的行为

将数据写入文件时,可以使用类似的格式化字符串:

c

Copy code

FILE *fp = fopen("c:/zymdata1.txt", "w"); if (fp == NULL) { printf("文件保存失败!\n"); return -1; } // 写入记录数 fprintf(fp, "记录数: %d\n", rec_table.count); // 写入每条记录 for (int i = 0; i < rec_table.count; i++) { Student *s = &rec_table.students[i]; fprintf(fp, "ID: %d, 班级: %d, 姓名: %s, 开始时间: %02d:%02d, 费用: %.2f\n", s->id, s->class, s->name, s->start_time.hour, s->start_time.minute, s->cost); } fclose(fp);


lab1 Wireshark_Intro_v7.0

While Wireshark is running, enter the URL:

http://gaia.cs.umass.edu/wireshark-labs/INTRO-wireshark-file1.html

and have that page displayed in your browser. In order to display this page, your

browser will contact the HTTP server at gaia.cs.umass.edu and exchange HTTP

messages with the server in order to download this page, as discussed in section

2.2 of the text. The Ethernet frames containing these HTTP messages (as well as

all other frames passing through your Ethernet adapter) will be captured by

Wireshark.

最开始搜不到http。发现是问题:
2. 使用了 HTTPS

  • 如果 URL 使用的是 HTTPS 协议,而不是 HTTP,数据被加密,Wireshark 无法直接查看 GET 请求。
  • 解决方法:
    • 确认访问的 URL 是 http://gaia.cs.umass.edu/...,而不是 https://...
    • 如果网站重定向到 HTTPS,请暂时关闭浏览器的“强制 HTTPS”选项,或使用支持 HTTP 的服务器地址。”

https和http区别
|特性|HTTP|HTTPS|

全称 Hypertext Transfer Protocol Hypertext Transfer Protocol Secure
数据加密 数据明文传输,容易被拦截和篡改 数据通过 SSL/TLS 加密,确保隐私和数据完整性
安全性 不安全,可能会泄露敏感信息 安全,数据被加密且身份认证防止中间人攻击
端口号 默认使用端口 80 默认使用端口 443
证书需求 不需要证书 需要服务器配置 SSL/TLS 证书
使用场景 适用于非敏感数据传输(如公开内容的网站) 适用于敏感数据传输(如银行、购物、登录页面)
解决方法
Google ChromeMicrosoft Edge 浏览器中,可以通过禁用强制 HTTPS 来访问 HTTP 网站(适用于测试或捕获网络流量)。以下是详细步骤:

Google Chrome 禁用强制 HTTPS

  1. 临时方法(针对单个网址):

    • 打开 Chrome。
    • 在地址栏中输入 chrome://net-internals/#hsts 并按回车。
    • "Delete domain security policies"(删除域名安全策略) 部分:
      • 在输入框中输入目标网站的域名(如 gaia.cs.umass.edu)。
      • 点击 "Delete"(删除)
    • 此操作会暂时移除该网站的 HTTPS 强制要求。
  2. 禁用所有 HTTPS 强制(实验性功能)

    • 在地址栏中输入 chrome://flags
    • 搜索 "HTTPS-First Mode"
    • 将其设置为 "Disabled"(禁用)。
    • 重启浏览器。

Microsoft Edge 禁用强制 HTTPS

  1. 临时方法(针对单个网址):

    • 打开 Edge。
    • 在地址栏中输入 edge://net-internals/#hsts 并按回车。
    • "Delete domain security policies"(删除域名安全策略) 部分:
      • 在输入框中输入目标网站的域名(如 gaia.cs.umass.edu)。
      • 点击 "Delete"(删除)
    • Edge 将不再强制该域名使用 HTTPS。
  2. 禁用所有 HTTPS 强制(实验性功能)

    • 在地址栏中输入 edge://flags
    • 搜索 "Automatic HTTPS"
    • 将其设置为 "Disabled"(禁用)。
    • 重启浏览器。

问题解决

标签:fp,count,12,读取,fscanf,30,2024,fprintf,HTTPS
From: https://www.cnblogs.com/zlr585/p/18646065

相关文章

  • 2024.12.30 周一
    2024.12.30周一Q1.1100FarmerJohnhasapermutation$p_1,p_2,\ldots,p_n$,whereeveryintegerfrom$0$to$n-1$occursexactlyonce.HegivesBessieanarray$a$oflength$n$andchallengeshertoconstruct$p$basedon$a$.Thearray$a$isconstr......
  • Sola的2024年度总结
    前言2024这一年对我来说确实意义非凡,很想写点东西来记录一下这一年我的经历,算是第一次写年度总结了。简短的记录一下我这一年。现在?未来?回忆起大一下最后一节体育课,体育老师让每个人想一个词来描述这个上半年,我给出的答案是:迷茫。现在来看,这个答案贯穿了我\(\frac34\)......
  • 【2024超全汇总】这是我见过最全面的AI大模型面试题集合!
    节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。喜欢记得点赞、收藏、关注。更多技术......
  • 【2024最全总结】大模型面试题:每道都是硬核挑战,没有送分题!
    节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂同学、参加社招和校招面试的同学,针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。今天分享大模型面试相关知识点,持续更新,希望对后......
  • 2024年总结【第五年了】
    2024年总结北国绕院扫雪,南方围炉烹茶,且饮一杯无?执笔温暖不曾起舞日子里的点点滴滴,誊写一段回忆,还以光阴一段副本。那么你要听一支新故事吗?第五年总结的片碎。衣单天寒,走趟流星孤骑,掩月夜行,奔袭辰宿的天地洪荒。往咎这个世界会好吗“如此生活30年,直到大厦崩塌”......
  • 商标人眼中的2024十件商标大事!
    2024年结束,在这一年发生过许多商标有关的事件,普推知产商标老杨仅从一个商标知产人的角度进行分析,看看在这一年中都发生过哪些商标大事。一、年初电视《繁花》热映,繁花被《繁花》电视剧的关联主体泽东事务所申请了近200个商标,这个关联主体也是王家卫旗下的,商标分类涉......
  • 12.26
    在深入钻研Vue.js的过程中,我于前端开发的编程思维领域实现了质的飞跃。往昔进行传统JavaScript开发时,操作DOM元素的繁琐流程常常耗费大量心力,代码的可读性也欠佳。而Vue.js所具备的响应式数据绑定以及声明式的模板语法,为我开辟了全新的路径。如今,我能够以一种更为直观......
  • Spring Data REST 远程代码执行漏洞(CVE-2017-8046)分析与复现12
    前言2009年9月Spring3.0RC1发布后,Spring就引入了SpEL(SpringExpressionLanguage)。对于开发者而言,引入新的工具显然是令人兴奋的,但是对于运维人员,也许是噩耗的开始。类比Struts2框架,会发现绝大部分的安全漏洞都和ognl脱不了干系。尤其是远程命令执行漏洞,占据了多少甲方乙方......
  • VMware ESXi 8.0U3c macOS Unlocker & OEM BIOS 集成驱动版,新增 12 款 I219 网卡驱动
    VMwareESXi8.0U3cmacOSUnlocker&OEMBIOS集成网卡驱动和NVMe驱动(集成驱动版)发布ESXi8.0U3c集成驱动版,在个人电脑上运行企业级工作负载请访问原文链接:https://sysin.org/blog/vmware-esxi-8-u3-sysin/查看最新版。原创作品,转载请保留出处。发布ESXi8.0......
  • 盘点2024:AI大模型在医疗健康领域的应用
    2024年,AI大模型在医疗健康领域展现出强大的创新活力和商业潜力,各类应用场景不断深化,市场规模持续扩大。本文将从应用领域、市场发展及未来趋势等维度,全面回顾AI大模型在医疗健康领域的发展现状。 一、主要应用领域 1.药物研发医药研发领域成为AI大模型最具突破性的应用场......